Arsenal won the race to sign a young Carlos Vela ahead of several European teams in 2005. He moved to the Gunners from Guadajalara in his native Mexico in 2005 and went on to spend seven years as an Arsenal player before joining Spanish La Liga club Real Sociedad in 2012 for an undisclosed fee.

Carlos Vela signed for the Gunners in November 2005. The Mexican international put pen to paper on a five-year deal at the Emirates Stadium. Arsenal paid £125,000 for Carlos Vela and it rose to £550,000 when he played 50 games for the North London side.

His early days at Arsenal didn't go as planned due to work permit restrictions since he was a non-EU citizen. Vela was loaned out from Arsenal to Celta Vigo in Spain in February 2006 but he didn't play a single game before returning to Arsenal. The Mexican attacker was then sent to Spanish teams Salamanca and Osasuna in quick succession.

Carlos Vela returned to North London in the summer of 2008. He played his first competitive game for the Gunners on August 30, 2008. He played the final 27 minutes as a second half substitute for Dutchman Robin Van Persie as Arsenal beat Newcastle United 3-0. His first start ended with him netting three goals in the third round of the League Cup. Vela hit a treble in the 6-0 thrashing of Sheffield United. Arsenal featured the youngest ever squad at the average age of 19 against the Blades. The Mexican was also on target in the League Cup fifth round tie with Burnley that season. He scored one of the goals in a 3-0 win over the Clarets.

Vela found the back of the net in the Premier League for the first time against Portsmouth on May 2, 2009 thus making him only the second Mexican player to hit the back of the net in the Premier League era. In total, Vela scored three times in 29 Premier League games for the Gunners.