Castro's career started in his homeland with Montevideo Wanderers, manager Alfredo Arias promoted the midfielder into his first-team squad during the 2014–15 Uruguayan Primera División season.[1][3] Having been an unused substitute for matches with El Tanque Sisley, Rampla Juniors and Tacuarembó, Castro made his first professional appearance in a 1–0 loss away to Sud América on 6 December 2014.[1] That was his sole appearance that season, with just two more coming in 2015–16.[1] Castro featured fifteen times in the next campaign, whilst scoring his first three senior goals; including his opener over Nacional in September 2016.[1]
In total, Castro appeared in eighty-seven matches for Montevideo Wanderers across five years, a spell in which he netted seventeen goals; notably eleven of which came in 2018, which was his last season with the club.[1] On 4 January 2019, Castro joined Argentine Primera División side Estudiantes; signing a three-year contract.[1][4][5] After debuting in a home loss to Vélez Sarsfield on 28 January, he netted his first goal on 18 February against Argentinos Juniors.[1] Further goals versus Talleres and, in the Copa Argentina, Sarmiento occurred across thirty total appearances in his first twelve months with Estudiantes.[1]
Midway through Castro's second season with Estudiantes he joined Major League Soccer's Atlanta United on a six-month loan, with an option for the club to extend the deal for the rest of the season.[6] He made his debut in the CONCACAF Champions League on 11 March as Atlanta lost 3–0 at the Estadio Azteca to América.[1] The club, during the season's delay due to the COVID-19 pandemic, exercised their loan extension option on 29 June.[7] After three appearances in the MLS is Back Tournament, Castro made his regular season bow in a win over Orlando City on 29 August.[1] His loan ended on 24 November, after the winger had appeared eleven times; though just three were as a starter.[1]