Born in Fray Bentos, Silva finished his youth formation in Danubio FC's youth category, making his professional debut on 13 September 2009, against Liverpool F.C.[2] His first career goal came on 5 December, in a 2–0 home win over Central Español.[3]
On 24 July 2010, Silva signed a contract with UD Almería, for an undisclosed fee.[4] He made his La Liga debut on 18 September 2010, in a 0–1 away defeat against RCD Espanyol.[5] He scored his first goal abroad on 5 February 2011, in a 3–2 home win against Espanyol.[6]
In February 2012, after failing to retain a starting spot, Silva was loaned to Peñarol.[7] He scored twice in only 11 league appearances for the Uruguayan giants, also appearing in that year's Copa Libertadores.
On 1 August 2014 Silva rescinded his link with the rojiblancos,[9] and signed a one-year deal with UD Las Palmas hours later.[10] On 22 July of the following year he moved to Real Valladolid also in the second level.[11]
On 16 July 2016, Silva signed a one-year contract with Real Zaragoza, still in the same division.[12]