Real Madrid climbed back to the top of La Liga despite a goalless draw against Osasuna on Wednesday, while Rayo Vallecano's Radamel Falcao rolled back the years to score the sole winner against Barcelona, sending the Catalans to ninth in the league.
Karim Benzema struck the bar in the second half at the Santiago Bernabeu but Osasuna could have won it too, with Kike Garcia missing the best chance of the game when he hit the post from five yards.
Madrid jumps above Sevilla, Real Betis and Real Sociedad – all four of them with 21 points – on goal difference while Osasuna sits sixth after extending its strong start to the season.
The 35-year-old Falcao continues to surprise at Rayo after scoring his fourth goal in six games for his new club and surely the sweetest, coming against Barca, whom he last scored against in 2013.
Memphis Depay missed a penalty at a bouncing Vallecas as Barca's continued its miserable start to the season under Ronald Koeman, who was sacked later the same day.
Rayo stays above Barca, and is only two points off fourth, maintaining its perfect record at home this term with a fifth win out of five.
Falcao joined on a free transfer in the summer and after shirts with his name on the back sold out, he has so far lived up to the hype.
Only Cristiano Ronaldo and Lionel Messi have better goals per game ratios in La Liga than Falcao, who replaced Sergio Aguero at Atletico Madrid in 2011, and now faced the Argentinian again.
The last time Aguero and Falcao were on the same pitch together they scored two goals each in a 5-3 win for Manchester City against Monaco, but this was Falcao's night.
At 35 years and 220 days, he is the oldest player to score four or more goals in his first six games for the same club in La Liga this century.
Sergio Busquets was at fault for the goal, robbed of the ball in midfield and giving Oscar Trejo the opportunity to free Falcao, who looked to have let the moment pass, only to twist past Gerard Pique and finish into the far corner.
Barcelona had been sloppy, with Philippe Coutinho and Depay particularly wasteful in possession, but it should have leveled when Depay's cross found Sergino Dest six yards out but he ballooned over.
Dest missed a similar chance in the Clasico on Sunday.
With 20 minutes to go, it looked like Barca finally had the breakthrough as Depay felt the back of his leg clipped by Oscar Valentin.
Depay put the ball under his arm, despite interest from Aguero, but Marko Dmitrovic dived the right way and parried the shot.
Barca squandered more chances late on as Aguero was allowed to stroll through but hit Dmitrovic before Luuk de Jong miscued an attempted lob and Gavi made a mess of a simple finish in injury-time.
Madrid almost snatched a victory when Benzema's shot brushed the top of the bar in the second half, shortly after Osasuna had squandered a golden opportunity on the break.
Chimy Avila surged away down the right and squared for Kike to finish from five yards but his shot came back off the post. It still might have cannoned in off Dani Carvajal's leg but trickled wide.
Marcelo and Vinicius Junior both went close in injury-time but Osasuna held on for a deserved point.