The film starring Denzel Washington and Mark Wahlberg pulled in $27.4 million, according to studio estimates Sunday.
"The Wolverine" grabbed second place with more than $21 million.
"The Smurfs 2" launched in the No. 3 spot with $18.2 million.
With more than $13 million in domestic ticket sales, "The Conjuring" came in fourth place.
"Despicable Me 2" rounded out the top five with $10.4 million.
The top 10 films of the weekend were:
1. "2 Guns,"$27.4 million.
2. "The Wolverine," $21.7 million ($38.5 million international).
3. "The Smurfs 2," $18.2 million ($52.5 million international).
4. "The Conjuring," $13.7 million ($11.6 million international).
5. "Despicable Me 2," $10.4 million ($13.8 million international).
6. "Grown Ups 2," $8.1 million ($2.8 million international).
7. "Turbo," $6.4 million ($6.9 million international).
8. "Red 2," $5.6 million ($9.3 million international).
9. "The Heat," $4.7 million ($6.9 million international).
10. "Pacific Rim," $4.6 million ($53 million international).
The Associated Press contributed to this report.