Real Madrid ended a seven-game winless run in El Clasico with a 2-0 victory in Sunday's clash thanks to a couple of second-half strikes.
Vinicius Junior broke Barcelona's resistance and substitute Mariano Diaz added a second as Real Madrid leapfrogged their bitter rivals at the top of LaLiga with a 2-0 win in Sunday's Clasico.
December's reverse fixture finished goalless for the first time in 17 years and that was the way this latest tussle at Santiago Bernabeu was heading until Vinicius struck with a deflected effort.
Thibaut Courtois and Marc-Andre ter Stegen made vital saves with the game at 0-0 and both teams had efforts stopped on the line.
But Vinicius found a way through 19 minutes from time and Mariano added a second late on to end Madrid's seven-match winless league run in this fixture as Zinedine Zidane's side moved a point clear at the summit.
Toni Kroos returned to Madrid's starting line-up and blazed over the crossbar from the game's first chance, shortly before Antoine Griezmann did likewise up the other end.
Barcelona lead the scoring charts in LaLiga this term, but no side has conceded fewer than Madrid and Courtois showed why with a couple of big first-half saves.
The Belgium international closed the angle to deny Arthur from a one-on-one and reacted well to keep out Lionel Messi's snapshot four minutes later.
Ter Stegen made his first big save of the game 11 minutes into the second half to keep out a curler from Isco, who also had a header blocked on the line by Gerard Pique.
Madrid continued to build some momentum and saw another chance come and go when Karim Benzema volleyed over Dani Carvajal's cross at the far post.
Barca appeared to have weathered the storm and nearly scored against the run of play when Martin Braithwaite's shot was cleared off the line by Raphael Varane.
But Vinicius deservedly fired the hosts in front after being played in behind by Kroos and slotting past Ter Stegen with the aid of a telling deflection off Pique.
And after near-misses for Pique and Vinicius at either end, Mariano sprinted past Samuel Umtiti and scuffed a shot over Ter Stegen just 50 seconds after being introduced from the bench to seal a vital win.
What does it mean? Advantage Madrid in tight title race
Madrid had drawn with Celta Vigo and lost to Levante in their last two matches to relinquish control of top spot to Barcelona, who won all four of their league games in February.
But this match did not go to form as Zidane's men dug deep in the first half and then produced an improved second-half display to swing the title race back in their favour.
Vinicius makes history with breakthrough goal
Brazil international Vinicius made some poor decisions at times in the final third, but he scored the all-important breakthrough goal to set Madrid on their way.
In doing so, at the age of 19 years and 233 days he becomes the youngest player to score in El Clasico in the 21st century, breaking the record previous held by Messi, whose first goal in the fixture came in March 2007.
Messi milestone marred by defeat
Barca superstar Messi set another record in this famous fixture by appearing for a 43rd time - one ahead of former team-mate Xavi - but he was unable to add to his 26 previous Clasico goals.
Two of his three shots were on target, but Courtois was equal to both and the Argentina international let his frustration show when lunging in on Casemiro to earn a booking five minutes from time.
Madrid return to LaLiga action with a trip to Real Betis next Sunday, while Barcelona are at home to Real Sociedad the day before.