Real Madrid came from behind to earn a remarkable victory at Camp Nou, in a result that simultaneously dents the hosts’ title hopes and boosts those of Atletico Madrid.
Both sets of players and a capacity Camp Nou crowd paid a moving pre-match tribute to the late Johan Cruyff but there was little of the footballing magic the Dutchman made his calling card during a fitful contest in Catalonia.
After Cruyff was honoured with a stadium-spanning mosaic and a minute’s silence, Luis Suarez wasted a glorious chance to give Barcelona a 10th-minute lead.
A misjudgement from Madrid captain Ramos, passed fit following a back problem, left Neymar and Suarez tearing towards goal – although the Uruguay star got his feet tangled and failed to convert at the back post when his team-mate squared.
Navas did not make a save until he parried Ivan Rakitic’s stinging 21st-minute shot, while the already booked Ramos was not punished when he brought down Messi on the edge of the Madrid box.
Bale and Ronaldo carried growing menace for the visitors as the half progressed but they were struggling to create openings as marauding Barca full-back Dani Alves blazed over.
When a chance fell to their forward colleague Benzema on the penalty spot a minute from the break the France international clattered his volley hopelessly into orbit.
Ramos continued to teeter on his disciplinary tightrope when he brought down Suarez three minutes into the second half and Messi fired the resulting free-kick over.
The mercurial Argentina star called Navas into action in the 54th minute with a sumptuous lob that the goalkeeper impressively clawed out of his top left corner.
A flurry of corners followed and Madrid were unable to withstand the pressure as Pique slipped away from Pepe to send a thumping header into the net from Rakitic’s right-wing delivery.
The lead would only last six minutes as Madrid full-back Marcelo fed Toni Kroos at the end of a driving run.
Germany midfielder Kroos tried to steer a pass across the box, with the ball deflecting off Jordi Alba, but Benzema was alert to the possibilities and swivelled to acrobatically volley home.
Barcelona needed a brilliant last-ditch tackle from Javier Mascherano to deny Ronaldo and Suarez flashed wide on the end of Messi’s raking pass before Bale had his celebrations cut short by the officials.
The Wales international simply appeared to time his jump better than Alba, climbing above the full-back to dispatch Ronaldo’s cross but referee Alejandro Jose Hernandez Hernandez chalked off the goal following a conversation with his assistant.
Ramos’ luck eventually ran out when he dived in on Suarez but Ronaldo would not allow that to stem the victory charge.
The three-time Ballon d’Or winner chested down Bale’s deep right-wing cross at the back post and buried an unerring finish beyond Bravo, peeling away to delight in the home supporters’ silence.
Cristiano Ronaldo struck after Sergio Ramos was sent off to snatch the 2-1 Clasico victory for 10-man Real Madrid over Barcelona in La Liga on Saturday.
Madrid’s burgeoning confidence might have been checked when Ramos’ concluded a rash outing with his second booking seven minutes from time, but Ronaldo’s 16th goal against Barcelona stunned the Camp Nou masses and handed Luis Enrique’s team their first defeat for 24 Liga matches.
Champions Barcelona are six points ahead of Atletico Madrid at the summit with seven matches remaining this season, while Madrid are a point further back, coach Zinedine Zidane having made a convincing pitch for his long-term job prospects at the Santiago Bernabeu.
Zinedine Zidane said he was “very proud” of his Real Madrid players after they came from behind to beat Barcelona.
Madrid’s win ended a run of 23 La Liga matches without defeat for Barcelona and leaves Zidane’s side just seven points behind their rivals in the title race.
“I am very proud of what the players did, this is not an easy ground, I’m very happy with everything, not just the result,” Zidane told reporters after the match.
“These are just three points. Now we must think about resting well and the next game in the Champions League.”
Real Madrid face Wolfsburg in the first leg of their Champions League quarter-final on Wednesday, but Zidane was happy to revel in his side’s Clasico win for the time being.
“When I see us like that, united, giving everything for your team-mates, for a coach that is the best,” he said. “I liked everything about my team – in attack and defence. We made a huge effort against very good players.
“Our start was not so good, but better to start difficult and end well as we have done. Defensively we played an enormous game against very good players. With small space they can do you damage. And we controlled that well.
“We are on our path, preparing for the end of the season. We know we can do important things in the Champions League.
“This can be a turning point. It is very important, for the rest of season, for our spirit. We must go step by step. First we must pass Atletico, we are still third. Then we’ll see what happens.
“There are still games to play,” the Los Blancos coach added.