The 27-year-old joins the Premier League club from Argentine side Velez Sarsfield, signing a three-year contract, with the option of a further year, with the Hammers.
"If you ask me what I can bring to the squad then I say I hope I will bring goals," he told the club website. "I will also bring dribbling skills and other attacking qualities.
"West Ham is a very important club and we know all about them and the Premier League in Argentina. This club is a beautiful club."
Before joining Velez, Zarate played in Italy for both Lazio and Inter Milan, also spending a brief period in England with Birmingham City in 2008.
He added that Manchester City striker Sergio Aguero, a former Argentina Under-20 teammate of his, told him that English football would suit his game.
Zarate is West Ham's first signing since the season finished.