Real Madrid knocked out 10-man Manchester United in controversial circumstances, while Borussia Dortmund swept Shakhtar Donetsk aside.
Jose Mourinho’s men had been trailing 1-0 at Old Trafford to a Sergio Ramos own goal, but a harsh red card on Nani for dangerous play saw Luka Modric and Cristiano Ronaldo turn it around.
Borussia Dortmund are also through after comfortably crushing Shakhtar Donetsk 3-0 in Germany.
Augusto Felipe Santana’s header and a Mario Goetze strike already had them 2-0 up by half-time before Jakub Blaszczykowski made sure on the hour mark.
The first leg had ended 2-2 in the Ukraine, so Borussia qualify 5-2 on aggregate.
Juventus will aim to join Real Madrid and Borussia Dortmund when they welcome Celtic on Wednesday evening.
They have a 3-0 advantage from the first leg in Glasgow.
Betting on Serie A? Bet365 are offering a 100% deposit bonus, up to £200 - find out more