Bayern Munich was on the verge of returning to the Champions League final and another match at Wembley against Borussia Dortmund until Real Madrid did what they always do in this competition with a late pair of goals.

Trailing 3-2 on aggregate following a goal from Alphonso Davies in the 68th minute, Joselu scored in the 88th minute on a rebound after Manuel Neuer dropped a Real Madrid to bring the tie even.

Joselu scored again seconds later with the goal originally disallowed before VAR confirmed he was not offside.

Bayern believed they equalized toward the end of stoppage time when Matthijs de Ligt found the back of the net, but the linesman already raised his flag for offside and the referee blew his whistle. Replays showed Bayern was onside. 

"I'm the hero? Well, I really don't know about that," said Joselu. "All I can definitely tell you is that I'm a very happy man!

"This was incredible. Spectacular. This team simply never gives in. Fighting until the final whistle is in our blood."

Real Madrid are seeking their 15th Champions League trophy and sixth since 2014.