Federico Valverde finished off a stunning move in extra time to give Real Madrid a 3-2 victory over arch-rivals Barcelona in an exhilarating Spanish Super Cup semi-final on Wednesday.
Real advanced to Sunday's final against the winners of Thursday's clash between holders Athletic Bilbao and LaLiga champions Atletico Madrid in the Saudi Arabian capital Riyadh.
Vinicius Jr. opened the scoring for Real from a counter-attack early in the first half, but Luuk de Jong equalised shortly before halftime following a mistake by Real defender Eder Militao.
Karim Benzema put Real back in front 25 minutes into the second half, striking home on the rebound from inside the area, but a header by substitute Ansu Fati, who was making his first appearance since November, took the game into extra time.
Real claimed the winner from another counter-attack, with Rodrygo firing a low cross to the edge of the area. Vinicius dummied to shoot, which eliminated the entire Barca defence and left Valverde all alone to tap the ball into an empty net.
Real Madrid were huge favourites entering the match, but struggling Barcelona gave the LaLiga leaders a tough game.
The King Fahd Stadium was supposed to be at 50% capacity due to COVID-19 concerns, but it looked almost full of excited fans thrilled to witness the first 'Clasico' played outside of Spain.
"We were very effective in the counter-attack and scored three spectacular goals," Real coach Carlo Ancelotti told a news conference.
Real Madrid sat back patiently and tried to set up counter-attacks for Vinicius and Benzema, but they allowed Barca to get too close to their area.
Xavi Hernandez's much improved team dominated the second half and extra-time, and Ousmane Dembele was a constant threat down the left for a Real defence missing David Alaba who was injured in the warm-up.