Real Madrid moved a step closer to a third consecutive Champions League triumph after the La Liga giants played out a thrilling 2-2 draw with Bayern Munich at the Bernabeu.
Coming into the game 2-1 down after the first-leg, Bayern got off to a great start, with full-back Joshua Kimmich scoring after just three minutes.
Soon after, the hosts drew level on the night, with Karim Benzema heading home from a superb Marcelo centre.
In a tight game with such high stakes, any mistake would be costly and just after the half-time break, goalkeeper Sven Ulreich’s major ricket allowed Benzema to bag his second of the game and put Real 2-1 up in the night and 4-2 up on aggregate.
However, just after the hour-mark, Real loanee James Rodriguez made it 2-2 at the Bernabeu to set up a tense finale.
Bayern pushed for a winner, with Corentin Tolisso and Thomas Muller both testing Keylor Navas in the Madrid goal.
At the other end, Mats Hummels headed wide for the visitors.
However, Zinedine Zidane’s charges stood firm to win 4-3 on aggregate and book their place in the final for the third consecutive season.
While Real wait to see whether Liverpool or Roma will face them in the final at the end of May, Bayern will rue another fruitless Champions League campaign.