Barcelona breathed life into their title defence as Lionel Messi's hat-trick gave them a thrilling 4-3 El Clasico win at 10-man Real Madrid.
Barcelona's all-time leading scorer struck two second-half penalties as the Catalan giants came from behind twice to win a pulsating encounter at Santiago Bernabeu on Sunday.
The second of those spot-kicks, scored with six minutes left after Xabi Alonso clumsily fouled Andres Iniesta, was hammered into the top-right corner as the defending champions closed to within one point of Real - and Madrid's city rivals Atletico - in the La Liga table.
Iniesta's early goal was cancelled out by a pair of Karim Benzema strikes, and although Messi levelled before half-time, a controversial Cristiano Ronaldo penalty put Real back in front.
Sergio Ramos was then sent off for hauling down Neymar, though, and Messi's first penalty restored parity.
And the Argentina star – who became the top scorer in Clasicos with his treble, overtaking Real Madrid legend Alfredo Di Stefano – held his nerve when presented with another penalty as his side notched their first league double over their rivals since the 2009-10 season.
Much was made of the influence Ronaldo, Gareth Bale and Neymar would have on the contest, but all three were not at their best, leaving Messi to play the starring role in the Spanish capital.
Neymar had an early strike saved before Iniesta fired Barcelona, who surprisingly dropped Alexis Sanchez and Pedro, into the lead to cap a superb team move in the seventh minute.
Real Madrid supporters were quick to voice their displeasure as the visitors enjoyed a spell of possession, but their whistles turned to silence as Messi's angled ball sent Iniesta through on goal and the midfielder thrashed a powerful left-footed finish past Diego Lopez.
Benzema, who had already spurned two chances, missed a golden chance to level when he turned over after an Angel Di Maria cut-back, and Messi shot wide when he seemed more likely to double Barcelona's lead.
The Frenchman eventually scored for Real, with his powerful header – which came from another cross from the outstanding Di Maria - too hot to handle for Barcelona goalkeeper Victor Valdes, going in off the post to level proceedings in the 20th minute.
And Benzema doubled his account just four minutes later, as Di Maria, who needed treatment just moments before, again found the forward, who chested down before volleying a classic centre forward's goal past Valdes.
Benzema could have had a hat-trick in the first 30 minutes, but saw Gerard Pique clear a curling effort off the line and Messi punished the hosts when he capitalised on a goalmouth scramble to score from close range just before the break.
Tempers frayed as Pepe and Cesc Fabregas were booked after the goal, but Real settled quickly after the interval, with Valdes doing well to deny Benzema after a great Bale run.
Real went ahead in controversial circumstances, as referee Alberto Undiano pointed to the penalty spot after Ronaldo was fouled by Dani Alves, although replays showed contact was initially made outside the area.
Ronaldo dispatched the spot-kick, powering an effort into the bottom left corner for his 26th league goal of the season, and Valdes had to keep out Bale after another Real attack.
The match swung in Barca's favour when an excellent Messi ball released Neymar, with the 19th red card of Ramos' Real Madrid career giving the Argentinian the chance to score from the penalty spot in the 65th minute.
And just like Ronaldo before him, Messi made no mistake, forcing Carlo Ancelotti to sacrifice Benzema for defender Raphael Varane.
A fizzing 20-yard effort from Alves then hit the inside of the left post with Lopez beaten, but Barcelona's numerical advantage was beginning to show.
Iniesta created the winner with a clever run, as his attempt to get away from Daniel Carvajal was blocked by Alonso, leaving Undiano with no option but to give another penalty.
And Messi ensured it was his name in the headlines again as he scored a crucial goal that is sure to ease the pressure on coach Gerardo Martino.
|Barkley ´obsessed´ with becoming world-class at Chelsea|
|Conte defends Chelsea amid surprise Carroll & Crouch links|
|Guardiola wants ´three or four´ signings but rules out Sanchez alternative|
|Atlanta United wrap up Barco signing for MLS record fee|
|Derby County 0 Bristol City 0: Penalty controversy in goalless draw|
|Hertha Berlin 1 Borussia Dortmund 1: Kagawa equalises in Aubameyang´s absence|
|Brighton break transfer record for Locadia|
|Dortmund still waiting on ´concrete´ offer for Aubameyang|
|Can will ´give everything´ at Liverpool despite Juventus talks|
|One Direction star trained with Mourinho´s Chelsea|
|Goretzka asks Schalke fans to not turn on him after agreeing Bayern deal|
|Van Persie secures return to Feyenoord|
|Conte should replace Wenger at Arsenal, claims Carragher|
|Kimmich named Germany’s 2017 Player of the Year|
|Moyes denies scouting Batshuayi and deals Chelsea blow with Carroll injury|
|No one like Ronaldinho until Messi - Guardiola lavishes praise on Brazil great|
|Simeone shrugs off mentality concerns at Atletico Madrid|
|Going for gold? Neymar meets Beckham in matching jackets|
|You think I change my mind that quick? – Klopp faithful to No.1 Karius|
|Conte backs Morata to overcome disciplinary concerns|
|Lloris a doubt for Southampton game, confirms Pochettino|
|Klopp doubts Alexis Sanchez tug-of-war decided by money|
|Conte admits Pedro dived|
|Valencia tie down Torres amid Real Madrid, Barcelona reports|
|Congratulations! Guardiola offers well wishes to United-bound Sanchez|
|Pele pulls out of London event amid conflicting health reports|
|Conte would be ´happy´ for transfer help|
|Sanchez to United not done at all, insists Mourinho|
|Emery refuses to indulge Neymar-Cavani penalty debate|
|Goretzka chose Bayern over England, Spain and Italy – Heynckes|
|I would reject such players – Heynckes slams ´selfish´ Aubameyang|
|Western Sydney Wanderers 0 Melbourne Victory 3: Barbarouses extends purple patch|
|Conte likes Dzeko but Chelsea have made no offer, says agent|
|Goretzka´s Bayern move good for Bundesliga, suggests Rummenigge|
|Walcott left Arsenal with his things in bin bags|
|Schalke confirm Goretzka will join Bayern|
|Sergi Roberto renews Barca deal until 2022|
|Fernandinho seals extended Manchester City contract|
|Ceballos knee knock to be assessed after Real Madrid Copa win|
|Hamsik has no doubts over Napoli future|
|Corchia determined to repay Montella´s faith at Sevilla|
|Arsenal or Manchester United – who wins from the Sanchez-Mkhitaryan deal?|
|I would love to coach PSG – Mancini|
|Merson: Mkhitaryan will be a sensation at Arsenal|
|Wins over substance for Varane and Real Madrid|
|Arsenal´s Giroud the answer for Chelsea, says Parlour|
|Wenger: Sanchez exit won´t hurt like Van Persie|
|Zidane hopes late Leganes win is turning point for Real Madrid|
|De Gea happy to delay Man Utd contract talks|
|Leganes 0 Real Madrid 1: Asensio´s late goal lifts pressure on Zidane in Copa quarter-final|
|Toulalan follows Gourvennec out of Bordeaux|
|Dortmund´s Durm suffers torn ankle ligaments|
|Chelsea send Nathan to Belenenses on loan|
|Chelsea in talks over deal for Roma full-back Emerson|
|Gravel for breakfast but no worms on Dyche´s menu|
|Dybala is no Messi - Laudrup thinks comparisons are unfair|
|Dortmund leave Aubameyang out amid Arsenal links|
|Koulibaly would stay at Napoli ´forever´|
|Neymar´s PSG contract has no release clause, lawyer claims|
|Robben relaxed over Bayern contract talks as other clubs circle|
|Henderson returns to Liverpool training|
|Football´s biggest release clauses - Pique joins Messi, Ronaldo and LaLiga´s big boys|
|No offers for Evans yet, says West Brom boss Pardew|
|Stafylidis seals Stoke switch|
|Worry about your own team - Dortmund slam Wenger´s Aubameyang pursuit|
|Praet denies agreeing deal to join Juventus|
|No BBC for Real Madrid´s Leganes clash|
|Stoke close to Stafylidis signing|
|Brisbane Roar 3 Perth Glory 2: Holman settles five-goal thriller|
|Gourvennec leaves Bordeaux after seventh defeat in eight games|
|Pique agrees new long-term Barcelona contract|
|Wenger rules out Ozil sale as talks continue over Wilshere deal|
|Sanchez-Mkhitaryan deal close, says Wenger|
|Meunier blasts ´disgraceful´ PSG fans after Neymar boos|
|Pique demands better at Camp Nou after Espanyol ´insults´|
|Schweinsteiger re-signs with Chicago Fire for 2018|
|Juve trying everything to sign Can, says Marotta|
|Rooney convinced me to join Everton – Walcott|
|Simeone: Sevilla deserved their win|
|Conte calls for VAR improvements|
|Neymar not angered by PSG whistles - Silva|
|FA Cup Review: Wigan dump Bournemouth out, nine-man Chelsea scrape through|
|Valverde rues Barca profligacy in Espanyol defeat|