A tenacious Barcelona frustrated Real Madrid to secure a 1-0 win over their bitter rivals in an ill-tempered Copa del Rey semi-final first leg on Thursday.
The visitors defended superbly after Real centre back Eder Militao scored an own goal in the first half, managing to overcome the loss of key players like Robert Lewandowski, Pedri and Ousmane Dembele who missed the game due to injuries.
Barca earned a much-needed win after arriving in the Spanish capital under pressure having been knocked out of the Europa League and losing at lowly Almeria to halt a seven-game winning streak in LaLiga.
"We would have liked to have the ball more, to control de game a little more but we fought hard and competed in a high level. They had the ball but didn't create many chances. We got the advantage for the second leg and that's really important," Barcelona captain Sergio Busquets told TVE.
Real Madrid started better and dominated the first 15 minutes, but Barcelona started to turn things around as they took control the midfield and their defensive game plan worked brilliantly.
Barca centre back Ronald Araujo did a great job at right back to neutralise the threat of the dangerous Vinicius Jr. and Karim Benzema was left alone up front.
Real became frustrated and tempers flared before the hosts made the crucial mistake which gave Barca the winner.
Madrid midfielder Eduardo Camavinga gifted a back pass to Ferran Torres who reacted quickly to slide the ball to Franck Kessie.
His point-blank strike was saved but bounced off Militao and into the net.
The assistant referee signalled offside but the VAR replay showed Kessie was fractionally onside and the goal stood.
Not a Single Shot on Target
Barcelona locked Real Madrid into an even tighter situation during the second half and although the hosts dominated possession, they rarely threatened to equalise.
Real did not record a single shot on target despite having almost 70% of possession in the second half and Barca should have extended their lead in the 71st minute when a Kessie shot that beat the goalkeeper was blocked by Ansu Fati.
Substitute Rodrygo had Real's best chance with a late long-range strike that flew narrowly wide of the post.
The teams meet again in Barcelona on April 5 with the winners to face Athletic Bilbao or Osasuna in the final.