Sánchez speelde in de jeugd bij Danubio. In 2005 debuteerde hij bij River Plate in de Uruguayaanse Primera División. In totaal verzamelde hij veertig optredens bij de club. In 2007 tekende hij een vijfjarig contract bij Valenciennes FC. In totaal maakte hij tien doelpunten in 178 competitiewedstrijden voor de club. In 2013 tekende hij een driejarig contract bij Elche CF. Aldaar speelde Sánchez in het seizoen 2013/14 dertig competitieduels.[1] In augustus 2014 zette hij zijn handtekening onder een vierjarig contract bij Aston Villa.
Sánchez debuteerde in mei 2007 in het Colombiaans voetbalelftal. Hij zat in de voorselectie voor de Copa América 2007, maar viel uiteindelijk af. Hij speelde mee in alle kwalificatiewedstrijden voor het wereldkampioenschap 2010 in Zuid-Afrika. In mei 2014 werd Sánchez door bondscoach José Pékerman opgenomen in de selectie voor het wereldkampioenschap in Brazilië.[2] Daar kwam hij in vier van de vijf duels in actie voor zijn vaderland. Vier jaar later was Sánchez eveneens van de partij bij de WK-eindronde in Rusland, waar de Colombianen in de achtste finales na strafschoppen werden uitgeschakeld door Engeland. Hij kreeg bij dat toernooi de op een na snelste rode kaart in de geschiedenis van het WK voetbal. Sánchez moest in de openingswedstrijd tegen Japan (1-2) al na drie minuten en vijftien seconden van het veld omdat hij hands had gemaakt in het strafschopgebied. De Sloveense scheidsrechter Damir Skomina gaf hem direct rood, de eerste van het toernooi. Het vergrijp kwam Sánchez in eigen land te staan op een doodsbedreiging.[3]