A brace from Kylian Mbappé -- the latter his 100th goal for the club -- claimed a famous victory for Real Madrid over Barcelona at the Spotify Camp Nou.
Having won every game so far in LaLiga, Barcelona looked extremely vulnerable to the Frenchman's pace in behind and eventually paid the price, letting Madrid back into the title race when they could, realistically, have been out of sight already.
Here, ESPN rates both sets of players after a dramatic Clásico.
Barcelona
Manager rating (out of 10)
Hansi Flick, 4 -- A rare off night for one of the best managers in the world. Barcelona have obviously had wonderful results playing a high line so far this season but Mbappé's pace allowed him to get in behind almost at will, and only poor service to the Frenchman prevented him getting even more chances.
Player ratings (1-10; 10 = best, 5 = average)
GK Joan García, 5 -- Couldn't have done much about either of the goals. Pulled off a couple of smart saves, most notably to deny Arda Güler.
RB Xaxi Espart, 5 -- Showed a couple of neat touches but withdrawn with an injury on the half-hour mark.
CB Pau Cubarsí, 4 -- Not his usual assured self. Struggled with Mbappé's pace in behind as Barcelona played a very high line. Needed Gerard Martín to bail him out when he dived in on Bellingham on the halfway line, missed the ball and presented Madrid with a two-on-one. Also caught out for Mbappé's winner.
CB Gerard Martín, 6 -- Struggled in the first half, and made a poor mistake for the opening goal, even if it was a little unfortunate. But looked a different player in the second and snuffed out a glorious chance for Bellingham and Mbappé, positioning his body perfectly between them when he was left all alone to deal with their counter-attack. Could have scored, but for a brilliant Lunin save.
LB João Cancelo, 4 -- Looked less comfortable when moved to right back after Xavi Espart's injury. Could not keep up with Yan Diomande's blistering speed.
DM Rodri, 5 -- As the anchor in Barcelona's midfield, he may feel a little disappointed with how open Barcelona were in the 15-minute period either side of halftime. Showed some neat touches on the ball, especially as the hosts began to dominate in the closing stages.
DM Pedri, 6 -- Struggled to assert himself in the first half but pulled out a nice assist in the second and looked much-improved from then on. Was key to Barcelona keeping the pressure on in the closing stages.
RW Lamine Yamal, 6 -- Marc Cucurella looked to have been told by Mourinho to antagonise the young winger, and it certainly worked in the first half. Had the perfect chance to level the scoring almost instantly after Mbappé's opener but shanked his finish well wide. Improved in the second and had a number of decent efforts, but overall will be disappointed he could not take his sparkling form into this game.
AM Fermín López, 6 -- Classy footballer. Carried the ball well through midfield but struggled to impact the game in the final third.
LW Anthony Gordon, 6 -- Looked lively, even if his shots failed to really trouble Andriy Lunin. Great fizzing pass into Fermín in the build-up to Yamal's first-half miss. Faded in the second half and was eventually subbed off.
ST Raphinha, 7 -- Barcelona's most dangerous attacker in the first half -- but that doesn't say much. Improved again -- along with his teammates -- in the second half, and provided a clinical finish to get the hosts back on level terms.
Substitutes (players introduced after 70 minutes: no rating)
LB Alejandro Balde (Xavi Espart 30'), 4 -- Came on for the injured Xavi Espart in the first half, with Cancelo moving to the right. Mostly anonymous, until a needless foul on Mbappé in the closing stages which ate up the rest of the time Barcelona might have had.
DM Frenkie De Jong (Fermín 74'), NR -- Struggled to impact the game on his return.
LW Karim Adeyemi (Gordon 85'), NR -- Had a shot just wide, otherwise didn't have enough time to assert himself.
ST Gabriel Jesus (Raphinha 86'), NR -- Mostly anonymous.
- Barcelona vs Real Madrid LIVE: LaLiga updates as Yamal and Mbappé go head-to-head in El Clásico
- Anthony Gordon delivers rating out of 10 for his start at Barcelona
- Real Madrid goalkeeper Thibaut Courtois out of Clasico with flu
Real Madrid
Manager rating
José Mourinho, 8 -- It's hardly rocket science to tell Mbappé and Diomande to run in behind Barcelona's high line, but Mourinho deserves real praise for how he set up his defensive line on Sunday night. A triumphant return to this fixture and one of the biggest nights of the Portuguese coach's career in the last decade.
Player ratings
GK Andriy Lunin, 6 -- Might have done better with Raphinha's equaliser, but more than made up for it with a wonderful instinctive stop to deny Gerard Martín five minutes later.
RB Federico Valverde, 5 -- Looked to be struggling with an injury in the first half, and was eventually withdrawn straight after Raphinha's equaliser. Kept Gordon relatively quiet, even if the Uruguayan was not able to contribute much going forward.
CB Ibrahima Konaté, 7 -- Quickly establishing himself as one of Mourinho's favourite defenders. Nearly gifted the ball to Raphinha in the second half but was very assured other than that against one of the best frontlines in Europe.
CB Dean Huijsen, 7 -- Kept Raphinha relatively quiet in open play, even if it got a bit last-ditch towards the end.
LB Marc Cucurella, 8 -- The perfect man to try and antagonise Yamal. Was perhaps lucky to escape without a booking in the first half, but walked the tightrope well in the second. It takes a lot to keep Lamine Yamal quiet, but Cucurella did exactly that.
DM Aurélien Tchouaméni, 6 -- Combative in midfield, even if Fermín got the better of him a few times.
DM Bernardo Silva, 5 -- Has not yet settled into life in Madrid. Was fooled badly by Pedri, who faked a shot and had the Portuguese midfielder jumping in the air before he slid it to Raphinha for the equaliser.
RW Arda Güler, 6 -- A constant nuisance for the Barcelona backline. Drew a smart stop out of Garcia from range.
AM Jude Bellingham, 6 -- Had a number of chances to slide Mbappé in, but seemed to overhit the ball on every occasion. But redeemed himself eventually with some great work in the buildup to Mbappé's winner.
LW Yan Diomande, 7 -- Continued his good form and was a constant threat. Could have done better with a chance late in the first half which he slammed into the side-netting.
ST Kylian Mbappé, 9 -- A constant threat in behind with his pace as Barcelona insisted on playing a high line. Did not know much about his first goal, but it can hardly be a coincidence that his second was his 100th goal for the club in just over two seasons. Just impossible to defend at times.
Substitutes
RB Denzel Dumfries (Valverde 62'), 5 -- Mostly anonymous after his introduction, but that's not always a bad thing as a defender.
DM Eduardo Camavinga (Bernardo Silva 80'), NR -- Had one of his best moments in a Real Madrid shirt as he skipped around Pau Cubarsí to set up the winner.
RW Trent Alexander-Arnold (Güler 94'), NR -- Brought on to kill a few more seconds. Did exactly that.
LW Carlos Espí (Diomande 94'), NR -- See above.
