Castro began his career within the youth ranks of Argentine club Gimnasia y Esgrima La Plata in 2003. He remained within the youth system until 2008, when he was promoted to the first team. He made his debut against River Plate. He later scored his first goal for the club on 10 October 2008 scoring against Rosario Central
In July 2011, Castro completed a transfer to Argentine rivals Racing Club de Avellaneda after being signed by Manager Diego Simeone. Castro played mainly on the left wing and Mauro Camoranesi usually playing on the right wing. In his only season with the club, he scored 6 goals in 29 league appearances.