Silva speelde in de jeugdopleiding van Universidad Católica, waar hij vanaf zijn veertiende levensjaar actief was. In 2006 brak hij door in het eerste elftal van zijn club. Uiteindelijk zou hij eenmaal het landskampioenschap (2010) en eenmaal de beker (2011) winnen. In de zomer van 2010 was hij in beeld geweest bij Lecce, maar vanwege de restricties op het halen van buitenlandse spelers ging die deal niet door. In januari 2013 verkaste de middenvelder naar het Spaanse Osasuna. In 2014 werd Silva voor één seizoen verhuurd aan Club Brugge. Het seizoen daarna verkocht Osasuna hem aan Jaguares, op dat moment actief in de Liga MX. Na een jaar verruilde hij deze club voor Cruz Azul. In de zomer van 2018 ging Silva spelen voor Independiente, waar hij voor twee jaar tekende.[1] Een jaar later verkaste hij naar Universidad Católica.[2] In september 2021 besloot Silva op vijfendertigjarige leeftijd een punt te zetten achter zijn actieve loopbaan.[3]
Silva debuteerde in 2007 in het Chileens voetbalelftal en werd in mei 2014 opgenomen in de selectie van bondscoach Jorge Sampaoli voor het wereldkampioenschap voetbal 2014 in Brazilië. In de groepsfase speelde hij in de duels tegen Spanje (0–2 winst) en Nederland (2–0 verlies) mee. Twee jaar later maakte Silva deel uit van het elftal dat de Copa América 2015 won, de eerste prijs in de geschiedenis van het Chileens elftal. Hij speelde zelf één wedstrijd dit toernooi, de finale tegen Argentinië. Silva won een jaar later ook de Copa América Centenario met zijn landgenoten, opnieuw door in de finale te winnen van Argentinië. Hij benutte de laatste penalty in de beslissende strafschoppenreeks.