Zárate began his club football career at Vélez Sarsfield where he had played since childhood. At age 17, considered too strong for the youth category, he was promoted to the first team with which he made his full debut on 21 April 2004 against Arsenal de Sarandí. He shared the top-scorer award for the Apertura 2006 with Rodrigo Palacio (Boca Juniors) with 12 goals each. On 18 June 2007, Zárate signed a two-year deal with Al-Sadd in the Qatari League for a fee reported by Clarín at $22 million. However, he did not remain in Qatar long, playing just six league matches and scoring four goals, before heading on loan to English Premier League side Birmingham City. After ten years playing around Europe (Lazio, Watford, Fiorentina, Internazionale, Birmingham, West Ham) on 2 October 2017, Zárate joined United Arab Emirati club Al-Nasr in a loan deal slated to run until the end of the 2017–18 season. After failing to find the net in his first four games, he then scored three goals in as many games for the UAE Pro-League club. In January 2018, after eight appearances for Al-Nasr, it was announced that Zárate had rejoined Vélez Sarsfield on loan, for his third spell at the club where he started his career.In July 2018, Zárate signed for Boca Juniors, despite previously indicating his intention to sign permanently with Velez.