Real Madrid fought valiantly as they booked their place in the final of the Super Cup with an enthralling 3-2 victory over rivals Barcelona.
Barcelona began with a dangerously high defensive line that allowed Real a lot of space in behind, and Vinicius perhaps should have capitalised on that with an early chance which he sent right at Marc-Andre ter Stegen in goal.
Another counter gifted Marco Asensio another chance to open the scoring, but he could not keep his curling effort down. Fortunately for Real, Vinicius could.
After 25 minutes, yet another counter saw Vinicius flying towards goal, and he flashed his new-found composure to thunder past Ter Stegen.
It took Barcelona half an hour to test Thibaut Courtois. The dangerous Ousmane Dembele floated in a cross for Luuk de Jong, whose powerful header was straight at the goalkeeper but served as a reminder of his threat.
Barcelona ended the half well and got an equaliser shortly before the break through De Jong. Eder Militao tried to clear a cross but fired his effort right at the Dutchman, who knew absolutely nothing as the ball trickled over the line.
Substitute Pedri nearly bagged a second straight after the break, sending a long-range effort agonisingly wide of the left post, before Dembele sent a volley crashing past the other.
Barcelona were on top of the game in the early stages, enjoying a lot of efforts on goal, but they generally struggled to keep the ball and their rocky build-up meant clear cut chances were at a premium.
However, with 20 minutes to go. Karim Benzema came to life. He hit the post, then drew an excellent save from Ter Stegen, but he stayed in the six-yard box and tapped home from close range.
Real looked to be in control heading into the final ten minutes, but from out of nowhere, up popped Ansu Fati with a late header to send the tie to extra time.
The final goal came like the first. Midway through the first interval, a high line from Barcelona gifted Real with so much space in behind, and Federico Valverde fired home after a nice dummy from Vinicius to steer Los Blancos through to the final.
Barcelona player ratings
1. Goalkeeper & defenders
Marc-Andre ter Stegen (GK) - 5/10 - Didn't do enough for Vinicius' opener. Poor positioning... again.
Dani Alves (RB) - 4/10 - He did well against Vinicius when one-on-one, but when the Real winger could start running? Yikes. He's the oldest player to ever feature in El Clasico and really looked like the oldest player to ever feature in El Clasico.
Ronald Araujo (CB) - 5/10 - Like Ter Stegen, was actually good when called upon but did his best never to be in that situation in the first place. Some woeful positioning.
Gerard Pique (CB) - 4/10 - Some good defending but just doesn't have the legs to play in a high line. Couldn't deal with things as the clock ticked on.
Jordi Alba (LB) - 3/10 - Took a nasty blow to the shoulder early on and really wasn't great, but played a huge role in Fati's late equaliser.
Sergio Busquets (DM) - 4/10 - Just so slow. Caught in possession for the opener and didn't have the pace to get back.
Frenkie de Jong (CM) - 4/10 - Lacked any form of urgency and was obviously scared of doing anything wrong. Kept things too simple before being taken off at the break.
Gavi (CM) - 6/10 - Not involved in attack but did a really nice job of neutralising Toni Kroos.
Ferran Torres (RW) - 5/10 - Didn't really do much on his debut before being taken off at half time.
Luuk de Jong (ST) - 7/10 - A real presence in the air and got some well-deserved good fortune for his goal.
Ousmane Dembele (LW) - 8/10 - A massive threat down the left. Easily the team's best player. No wonder they want him to stay.
Pedri (CM) - 8/10 - Made an instant impact with his awareness. Changed the game.
Ez Abde (RW) - 5/10 - Good energy but looked to be trying to do too much. Sometimes just needed a basic pass.
Ansu Fati (ST) - 6/10 - Isolated before his goal but an excellent header.
Memphis Depay (ST) - 5/10 - Didn't really get involved.
Nico Gonzalez (CM) - 6/10 - Nice and composed in midfield. As per.
Ferran Jutgla (RW) - N/A
Real Madrid player ratings
5. Goalkeeper & defenders
Thibaut Courtois (GK) - 7/10 - Could do nothing for De Jong's equaliser, although he almost managed to keep it out. Some excellent saves late on.
Dani Carvajal (RB) - 4/10 - Did not enjoy dealing with Dembele at all.
Eder Militao (CB) - 4/10 - Not his finest outing. Unfortunate for De Jong's goal but invited too much pressure, and didn't cover himself in glory for Fati's header either.
Nacho Fernandez (CB) - 4/10 - Didn't deal with De Jong's aerial threat well and also fluffed his lines against Fati. Looked very shaky. Hope David Alaba's back soon.
Ferland Mendy (LB) - 4/10 - Poor positioning and typically awful in attack. An unreal bit of skill to avoid some late pressure.
Casemiro (DM) - 5/10 - Didn't do a great job of shielding the back line, but nothing too awful
Toni Kroos (CM) - 5/10 - Kept very quiet by Gavi.
Luka Modric (CM) - 7/10 - Real class on the ball. Made some lung-bursting runs that will have had Carlo Ancelotti wincing.
Marco Asensio (RW) - 5/10 - Got in some decent positions but lacked the quality to make the most of them.
Karim Benzema (ST) - 8/10 - Did well dropping deep and helped create Vinicius' opener, before remembering he's a striker and tearing it up up top.
Vinicius Junior (LW) - 8/10 - Had Alves' life with his pace and took his goal well.
Rodrygo (RW) - 4/10 - Not particularly involved following his introduction. Missed an absolute sitter with pretty much the last kick of the game.
Federico Valverde (CM) - 7/10 - An excellent challenge to deny a late winner, and then popped up with the decisive goal himself.
Lucas Vazquez (RB) - 6/10 - Didn't do much better against Dembele but didn't do much wrong.
Eduardo Camavinga (CM) - N/A