Born in Pergamino, Buenos Aires, Fernández was a River Plate youth graduate. He made his first team debut on 29 January 2006, coming on as a substitute for Jonathan Santana in a 5–0 away routing of Tiro Federal. Fernández scored his first professional goal on 8 April 2007, netting the equalizer in a 1–1 home draw against Belgrano. With River he won the 2008 Clausura under Diego Simeone's coaching, playing on 15 of the 19 games.
On 9 July 2010, Fernández signed a three-year deal with Argentine Primera División side Vélez Sarsfield, who bought 100% of his rights from Pinhas Zahavi for a fee of US$ 1.5 million. On his first tournament with his new club – 2010 Apertura – he played 12 games on Vélez' runner-up campaign. Fernández totalled 17 games and 4 goals in his team's league winning campaign, and 10 games and 4 goals on their Copa Libertadores semi-finalist campaign. During the semester, he scored in 57 days twice as many goals as he had during his entire professional career: 3 on the Copa Libertadores and another 3 on the Argentine league. Against L.D.U. Quito for the Copa Libertadores round of 16, he also scored his first double.
Celta
On 8 August 2012, Fernández joined newly promoted La Liga club Celta de Vigo on a four-year deal. He made his debut in the category ten days later, starting in a 0–1 home loss against Málaga CF. Fernández scored his first goal in the main category of Spanish football on 22 September 2012, netting the first in a 2–1 home success over Getafe CF. He finished the season as an ever-present figure for the Galicians, appearing in 36 matches and scoring six goals as his side narrowly avoided relegation. Fernández was still a first-choice in the following campaigns, with the side now finishing in mid-table positions. On 3 October 2014, he was appointed captain of the club, replacing Borja Oubiña.
On 1 January 2016, Fernández joined Atlético Madrid on a three-year deal for an undisclosed fee, mainly as a cover to the injured Tiago. He made his debut 5 days later, playing 57 minutes of a Copa del Rey draw away to Rayo Vallecano before being replaced by Luciano Vietto; he made his first league appearance for the club on the 11th of January, against Celta, his former team.
On 31 January 2018, Fernández signed with Chinese Super League club Beijing Renhe on an undisclosed fee.
Cádiz
On 23 June 2020, Fernández returned to Spain and joined Segunda División side Cádiz CF for the remainder of the season.
Club statistics
International career
Fernández made his full international debut for Argentina on 15 September 2011, starting in a 0–0 Superclásico de las Américas home draw against Brazil. On 2 June 2014 he was included in Alejandro Sabella's final 23-man squad for the year's FIFA World Cup, but was only an unused substitute during the whole tournament. In May 2016, he was included in Gerardo Martino's 23-man Argentina squad for the Copa América Centenario, being a starter for most of the tournament before missing the final after getting injured in the semifinal match.