Real Madrid and Juventus scraped their way into the Champions League semi-finals on Wednesday, by beating Atletico Madrid and Monaco respectively in closely contested matches, joining already qualified Bayern Munich and Barcelona.
Defending champions Real edged city rivals Atletico 1-0 thanks to an 88th-minute winner from on-loan striker Javier Hernandez after a goalless first leg.
Juventus also made it to the last-four after a 0-0 draw in Monaco that allowed them to qualify courtesy of their 1-0 first leg win in Italy last week.
Bayern and Barcelona had made sure of their places on Tuesday leaving Friday's semi-final draw to feature four teams with 21 European Cup triumphs between them.
The tie in Madrid was a repeat of last season's final, won by Real 4-1 after extra-time, but Atletico had gone unbeaten in seven previous meetings against their city rivals this season.
However, the visitors had to play the final 14 minutes with 10 men as Arda Turan was shown a second yellow card for a high challenge on Sergio Ramos.
Hernandez then finally got the all-important goal after brilliant work from James Rodriguez and Cristiano Ronaldo left the Mexican (on loan from Manchester United) with the simplest of finishes from close range.
"Obviously it is my most important goal because the present is what is important," said Hernandez.
"It is a derby which hasn't brought good memories since winning the 10th European Cup. I was the one who scored, but it belongs to everyone. The people who believed in me, my teammates and my family."
Atletico boss Diego Simeone hailed his players efforts.
"I go away proud of my team. Once more we competed very well in a very difficult competition like the Champions League," said the Argentine.
Monaco's Portuguese midfielder Bernardo Silva vies with Juventus' midfielder Andrea Pirlo during their UEFA Champions League quarter final second leg football match. (AFP PHOTO)
Juventus made the last four of the Champions League for the first time since 2003 after a goalless draw in their quarter-final, second leg with Monaco saw them progress 1-0 on aggregate.
A controversial Arturo Vidal penalty in the first leg in Turin last week ultimately proved enough for the Serie A leaders, who relied on their defensive strength to see off opponents again let down by their lack of quality in the final third.
A Monaco side full of youthful enthusiasm pushed forward for long spells, but Juventus, who had let in just one goal in their previous nine matches, always looked in control and veteran keeper Gianluigi Buffon was never seriously threatened.
The Italian giants came closest to scoring from a 90th-minute Andrea Pirlo free-kick that clipped the bar.
"Tonight was important. There was a lot of pressure on the players after 12 years of waiting," Juve's French full-back Patrice Evra told beIN Sports.
"Juve were the favourites but credit to Monaco because they deserved more. It's the Italian way, it's ugly but it works." Evra said.
On Tuesday, doubles from Robert Lewandowski and Neymar inspired Bayern Munich and Barcelona into the semi-finals.
Lewandowski's brace came in a crazy first half where Bayern rattled five goals past a demoralised Porto side, who had gone into the game leading 3-1 after the first leg and with real hopes of reaching their first semi-final since they won the trophy in 2004.
The game ended 6-1 and a 7-4 aggregate victory for Bayern, extending coach Pep Guardiola's remarkable record in the competition where he has never failed to reach the last four.
Neymar also scored his double in the first half for Guardiola's former side Barcelona as they eased to a 2-0 win on the night and a 5-1 aggregate win over French champions Paris Saint Germain.
While Barcelona reached their seventh semi-final in eight seasons, for PSG it was their third successive exit at this stage.