Relegation-battling Valladolid caused one of the upsets of the season in the day's early kick-off, inflicting a 1-0 defeat on the champions.
The clubs were separated by 40 points and 16 places heading into the match but it was the third-bottom side who emerged victorious thanks to Fausto Rossi's first-half strike.
With Barca having been beaten, and Real Madrid not in action until they face Levante on Sunday, Diego Simeone's Atletico headed into their game at Balaidos knowing a win would put them at the summit.
The first half was a lacklustre affair but a different Atletico emerged for the second period and two goals in two minutes just after the hour mark from former Barca striker David Villa sent Los Rojiblancos top - above Real on head-to-head record.
Elsewhere, rock-bottom Real Betis claimed their fourth win of the campaign with a 2-0 success against Getafe.
The hosts took the lead in the 16th minute through Leo Baptistao and Ruben Castro made sure of the points before half-time.
The result left the Seville-based side still bottom of the standings, but having cut the gap to safety to eight points.
In the late kick-off, fifth-placed Villarreal went down 2-0 at Granada.
Fran Rico opened the scoring from the penalty spot midway through the first half, and Youssef El Arabi doubled their advantage 10 minutes later.
The result left the Yellow Submarine six points behind fourth-placed Athletic Bilbao, who visit Valencia on Sunday night, while Granada climbed to 12th.