Holders Real Madrid will face city rivals Atletico Madrid in the last four of the Champions League, in a repeat of last season's final, with Juventus paired against Monaco in the other semi.
Zinedine Zidane's men defeated their LaLiga rivals in a dramatic penalty shootout to clinch an 11th triumph in Europe's premier competition.
It marked the second time in the space of three seasons that Madrid defeated Atleti in the final, while Los Blancos also beat Diego Simeone's men in the quarter-finals of the 2014-15 competition.
Madrid overcame Bayern Munich 6-3 on aggregate to reach the semi-finals after a dramatic second leg at the Santiago Bernabeu that went to extra-time, while Atleti progressed by beating Leicester City.
The first leg will be played at the Bernabeu, while the return tie will mark the last time the Vicente Calderon will host a Madrid derby before Atleti move into their new stadium next season.
Juventus, who last won the Champions League in 1996, defeated Monaco in the last eight of the 2014-15 competition en route to their final defeat at the hands of Barcelona.
Massimiliano Allegri's men impressively defeated LaLiga's champions 3-0 on aggregate in the quarter-finals this time, though, and remain on track for a Serie A, Coppa Italia and Champions League treble.
Monaco have been the surprise package in this season's competition and defeated Manchester City in the last 16 before completing a classy quarter-final triumph over Borussia Dortmund.
Leonardo Jardim's men have caused problems with the youth, vibrancy and pace in their side, with Kylian Mbappe a particular threat - the teenage France striker becoming the first player in the tournament's history to score in his first four knockout-stage matches.