Barcelona gave their La Liga title hopes a huge boost with a 3-2 defeat of arch-rivals Real Madrid in a thrilling Clasico at the Santiago Bernabeu on Sunday.
Lionel Messi scored a brace, including a superb last-gasp winner, and Ivan Rakitic added the third to pull Barca even with Real atop the league on 75 points, though the hosts still enjoy a game in hand.
And the game started with a bang.
Cristiano Ronaldo had a penalty shout after just two minutes when he looked to have been taken down in the box by Samuel Umtiti after touching the ball away from the Barcelona defender. However the referee adjudged there was no contact and allowed the teams to play on.
Ronaldo tested Marc-Andre ter Stegen minutes later when he found space down the right channel, but the Portugal captain ignored Karim Benzema’s run before firing tamely at the Barca keeper.
Casemiro was shown a yellow card on 12 minutes for hacking down Messi after the Barca No. 10 dribbled free near midfield.
Ronaldo managed a better effort after 20 minutes from just inside the box, but Ter Stegen did well to get down and parry his shot away.
A bloody Messi needed medical attention on the sideline after a Marcelo elbow caught him on the mouth as the two jostled for the ball. Messi, though, would rejoin the match moments later.
Real found their breakthrough in the 28th minute via midfielder Casemiro. The Brazil international just got a foot to Marcelo’s cross from the left, steering his effort off the post and past a helpless Ter Stegen.
Messi then answered five minutes later with a fine solo goal — the Barca star picking up Rakitic’s pass at the semi-circle and weaving through a thicket of Real defenders before coolly slotting past Keylor Vavas with his left foot.
Luka Modric forced a fine save from Ter Stegen moments later from distance, but the Barca keeper was again up to the task, keeping the ball out at full stretch.
Gareth Bale, who received a surprise start on Sunday, went down with what appeared to be a calf injury behind the play, and was removed in favour of Marco Asensio
Messi nearly claimed a second five minutes from the break when he pounced onto a loose ball and chipped just wide of the goal.
After the intermission, Dani Carvajal forced a desperate intervention from Gerard Pique after finding space down the right side and firing a dangerous low cross into the six-yard box.
Marcelo then forced another stretching save from Ter Stegen moments later with a well-hit strike from just outside the box.
Ter Stegen was again the hero in the 54th minute, stopping Benzema’s close-range header with his leg after an inch-perfect Marcelo cross from the left.
Paco Alcacer was guilty of missing a gilt-edge chance in the middle of the Real box moments later, but his tame toe poke couldn’t beat an alert Keylor Navas.
Navas was again into action on 59 minutes — his reflex save denying Pique’s header after a corner-kick situation.
Ronaldo missed a golden chance to give the hosts the lead in the 66th minute, but Asensio’s cross was just behind him and the Real superstar could only scoop his stretching shot over the bar.
Andres Iniesta found Luis Suarez with a lovely outside-of-the boot pass to put the Uruguayan in on goal, but Navas wonderfully denied his first-time volley with 20 minutes remaining.
Rakitic looked to have settled the score minutes later — the Croatia international cutting inside and firing an unstoppable shot past Navas from just outside the box to give Barca a 2-1 lead.
Sergio Ramos was given his fifth Clasico red card minutes later for a wild, two-footed challenge on Messi who had pushed the ball well past the Spain international down the right.
But James saved his blushes with a fine finish of a Marcelo cross on 87 minutes.
However, Messi would play the hero of yet another Clasico, scoring his 500th goal for Barcelona with the last action of the match, curling home past Navas from the top of the box to silence the Bernabeu.