Match ends, Real Madrid 2, FC Bayern München 1.
Real Madrid snatched an incredible semi-final victory as two late goals defeated Bayern Munich and set up a Champions League final with Borussia Dortmund.
Bayern looked to be heading to the final when Alphonso Davies cut in and blasted past Andriy Lunin after England captain Harry Kane had found him with a superb pass.
But Joselu grabbed an 88th-minute equaliser when he reacted quickest after Bayern goalkeeper Manuel Neuer, who had been excellent up until then, fumbled Vinicius Jr's effort.
There was even more drama to come two minutes later when Joselu, a former Stoke City striker, swept home from six yards after Antonio Rudiger's square pass.
The goal was initially ruled offside, only for a video assistant referee (VAR) decision to show that Joselu was onside, sparking incredible scenes of celebration in the Bernabeu, with Real hanging on to win 4-3 on aggregate.
Real, 14-time European champions, will face Dortmund on Saturday, 1 June at Wembley.
- Tuchel says offside decision 'felt like betrayal'
- Real Madrid v Bayern Munich as it happened, plus reaction and analysis
There was controversy in the 13th minute of injury time at the end of the second half as Bayern's Matthijs de Ligt thought he had taken the game to extra time.
A ball was played up to Noussair Mazraoui and the assistant referee's flag was raised for offside, with a number of Real defenders stopping before Bayern's De Ligt fired into the net.
Television replays suggested the original decision may not have been correct and that had the flag not been raised it would have needed to be checked by VAR, with Bayern boss Thomas Tuchel and a number of players including Kane and fellow Englishman Eric Dier strongly protesting against the decision.
Delight for Bellingham but heartbreak for Kane and Dier
For England midfielder Jude Bellingham, the outcome continues an incredible first season at the Bernabeu and he will face his former side Dortmund in the final in London.
Bellingham left the German team for Real in an £88.5m move in June 2023 and has a chance to complete a double, having already helped Real win La Liga.
"At Wembley, against Dortmund... It's a weird one, I can't believe it," Bellingham told TNT Sports. "When I was seven years old in Birmingham, I was dreaming of nights like this."
While it was a dream come true for Bellingham, there was heartbreak for his fellow England players Kane and Dier.
Kane has scored 44 times for Bayern since moving in an £86m transfer from Tottenham last summer, but this loss ends his hopes of winning a first major title in his career.
Both Kane and Dier played in the 2019 Champions League final as Tottenham lost 2-0 to Liverpool.
Kane had put Bayern 2-1 ahead in the first leg against Madrid, only for Vinicius Jr to grab his second to leave it at 2-2 after the opening match in Germany.
The second leg was played in a fantastic atmosphere at the Bernabeu. The hosts almost scored early on, only for Neuer to make an excellent double save - pushing Vinicius Jr's effort against the post and then stopping Rodrygo's follow-up effort.
Vinicius Jr was a constant threat for Real down their left but again saw Neuer twice make excellent saves.
But Bayern, against the run of play, took the lead in the 68th minute.
Kane, in the centre circle, sprayed a superb pass to Davies on the left flank, and the Canadian ran at Rudiger, cut inside on to his right foot and unleashed an unstoppable strike for what looked to be the winner.
Boss Tuchel, who is leaving Bayern at the end of the season, took Kane off with five minutes to go, before Joselu swung the game in Real's favour.
The striker took advantage of a rare Neuer error and then scored again three minutes later as Real clinched an incredible victory.
Real boss Carlo Ancelotti, who has reached his sixth Champions League final as a manager, said he is going to "enjoy this week".
"[My players are] unbelievable. I'm really grateful to them," Ancelotti added. "They work really hard and I think this is the best squad I have ever had in my career."
Player of the match
JoseluJoselu
Real Madrid
Avg
- Squad number14Player nameJoseluAverage rating
8.27
- Squad number7Player nameVinícius JúniorAverage rating
7.24
- Squad number10Player nameModricAverage rating
6.77
- Squad number22Player nameRüdigerAverage rating
6.66
- Squad number8Player nameKroosAverage rating
6.64
- Squad number11Player nameRodrygoAverage rating
6.59
- Squad number15Player nameValverdeAverage rating
6.51
- Squad number12Player nameCamavingaAverage rating
6.43
- Squad number21Player nameDíazAverage rating
6.43
- Squad number2Player nameCarvajalAverage rating
6.32
- Squad number5Player nameBellinghamAverage rating
6.28
- Squad number13Player nameLuninAverage rating
6.27
- Squad number23Player nameMendyAverage rating
6.24
- Squad number18Player nameTchouaméniAverage rating
6.21
- Squad number6Player nameNachoAverage rating
6.14
- Squad number3Player nameÉder MilitãoAverage rating
5.81
Bayern Munich
Avg
- Squad number9Player nameKaneAverage rating
7.24
- Squad number19Player nameDaviesAverage rating
7.23
- Squad number15Player nameDierAverage rating
6.85
- Squad number42Player nameMusialaAverage rating
6.84
- Squad number4Player namede LigtAverage rating
6.80
- Squad number1Player nameNeuerAverage rating
6.74
- Squad number6Player nameKimmichAverage rating
6.61
- Squad number10Player nameSanéAverage rating
6.60
- Squad number7Player nameGnabryAverage rating
6.43
- Squad number27Player nameLaimerAverage rating
6.42
- Squad number45Player namePavlovicAverage rating
6.35
- Squad number40Player nameMazraouiAverage rating
6.34
- Squad number3Player nameKim Min-jaeAverage rating
6.20
- Squad number25Player nameMüllerAverage rating
6.05
- Squad number13Player nameChoupo-MotingAverage rating
5.75
Line-ups
Real Madrid
Formation 4-4-2
- 13Lunin
- 2Carvajal
- 22Rüdiger
- 6Nacho
- 23Mendy
- 15ValverdeSubstituted forJoseluat 81'minutes
- 18TchouaméniSubstituted forCamavingaat 70'minutesBooked at 90mins
- 8KroosSubstituted forModricat 69'minutes
- 5BellinghamSubstituted forMilitãoat 90+10'minutes
- 11RodrygoSubstituted forDíazat 81'minutes
- 7Vinícius Júnior
Substitutes
- 1Courtois
- 3Militão
- 10Modric
- 12Camavinga
- 14Joselu
- 17Vázquez
- 19Ceballos
- 20García
- 21Díaz
- 24Güler
- 25Arrizabalaga Revuelta
Bayern Munich
Formation 4-2-3-1
- 1Neuer
- 6Kimmich
- 4de Ligt
- 15Dier
- 40Mazraoui
- 27Laimer
- 45Pavlovic
- 10SanéSubstituted forKim Min-jaeat 76'minutes
- 42MusialaSubstituted forMüllerat 84'minutes
- 7GnabrySubstituted forDaviesat 27'minutes
- 9KaneSubstituted forChoupo-Motingat 85'minutes
Substitutes
- 2Upamecano
- 3Kim Min-jae
- 8Goretzka
- 13Choupo-Moting
- 17Zaragoza
- 18Peretz
- 19Davies
- 25Müller
- 26Ulreich
- 39Tel
- Referee:
- Szymon Marciniak
- Attendance:
- 76,579
Match Stats
- Possession
- Home57%
- Away43%
- Shots
- Home19
- Away8
- Shots on Target
- Home7
- Away5
- Corners
- Home8
- Away4
- Fouls
- Home12
- Away10
Live Text
Post update
Full Time
Second Half ends, Real Madrid 2, FC Bayern München 1.
Post update
Foul by Luka Modric (Real Madrid).
Post update
Joshua Kimmich (FC Bayern München) wins a free kick in the defensive half.
Post update
Offside, FC Bayern München. Noussair Mazraoui is caught offside.
Post update
Foul by Éder Militão (Real Madrid).
Post update
Matthijs de Ligt (FC Bayern München) wins a free kick in the defensive half.
Booking
Eduardo Camavinga (Real Madrid) is shown the yellow card.
Post update
Foul by Eduardo Camavinga (Real Madrid).
Post update
Eric Choupo-Moting (FC Bayern München) wins a free kick in the defensive half.
Substitution
Substitution, Real Madrid. Éder Militão replaces Jude Bellingham.
Post update
Offside, FC Bayern München. Alphonso Davies is caught offside.
Post update
Attempt missed. Noussair Mazraoui (FC Bayern München) left footed shot from the right side of the box misses to the left. Assisted by Joshua Kimmich.
Post update
Nacho (Real Madrid) wins a free kick in the defensive half.
Post update
Foul by Konrad Laimer (FC Bayern München).
Post update
Joselu (Real Madrid) wins a free kick on the left wing.
Post update
Foul by Konrad Laimer (FC Bayern München).
Post update
VAR Decision: Goal Real Madrid 2-1 FC Bayern München (Joselu).
Goal!
Goal! Real Madrid 2, FC Bayern München 1. Joselu (Real Madrid) right footed shot from very close range to the centre of the goal. Assisted by Antonio Rüdiger with a cross following a corner.Goal awarded following VAR Review.
Post update
Corner, Real Madrid. Conceded by Eric Dier.
Comments
Join the conversation
A shame for Neuer because he'd had a great game until that point.
I'm not sure why they had to flag the offside Bayern goal so quickly, it was marginal at best and the player who was nearest to it when the defender headed it didn't even seem to be offside.
I think Real got away with one there.
The whole world sees the blatant corruption every year and nothing ever changes, what’s the point?
Flag stays down for hundreds of clear offsides, play continues just in case etc etc.
And then today in the most critical moment the flag goes up early - you could NOT make it up.
Turns out that it was probably just offside but that's beside the point.