Cristiano Ronaldo on Tuesday scored a hat-trick as holders Real Madrid controversially overcame Bayern Munich 4-2 after extra time for a 6-3 aggregate win.
The defending champions led 2-1 from the away first leg, but lost 1-2 for a 3-3 aggregate at full time in the home second leg before Ronaldo’s intervention.
But it was a performance enough for them to reach the UEFA Champions League semi-finals, and their seventh consecutive semi-final appearance.
Needing at least two goals to progress, Bayern led when Robert Lewandowski confidently drilled in a penalty kick.
Real Madrid struggled to find rhythm at a nervy Bernabeu before Ronaldo headed in Casemiro’s precise cross.
Bayern responded just 36 seconds later as Sergio Ramos’ own goal forced extra time, which the Germans had to play with 10 men after Arturo Vidal was sent off.
Ronaldo was standing in an offside position when he fired in Real Madrid’s second — and then Bayern crumbled.
The Portugal captain tapped in the third — for his 100th Champions League goal — after Marcelo’s marauding run, with Marco Asensio sealing victory by firing into the bottom corner.
Real Madrid will discover their semi-final opponents when the draw is made on Friday.
In the other quarter-final match also played on Tuesday, Atletico Madrid held off a spirited Leicester City to reach their third semi-finals in four years.
The English side’s superb debut campaign came to an end as Atletico Madrid sealed their progress to the last four with a 1-1 draw at the King Power Stadium.
Leading 1-0 from the first leg in Spain, Atletico took control through Saul Niguez’s first-half header.
City took the game to Atletico after the break and gave themselves hope via Jamie Vardy’s close-range finish.
But the visitors held on for a 2-1 aggregate win.