Real Madrid will play Manchester City for a place in the Champions League final, and Atletico Madrid will take on Bayern Munich.
Real Madrid is a record 10-time European champion, while City is in the semifinals for the first time. The first leg is in Manchester on April 26 and the return is set for May 4.
The clubs met in the group stage three seasons ago with Madrid winning 3-2 at home and drawing 1-1 in Manchester as City exited without winning a match.
Friday's draw extended Madrid's run this season of not having to face a former winner of Europe's top club competition.
Bayern was paired with Atletico Madrid in a rematch of the 1974 final. Then, the German club won 4-0 in a replay to take the first of its five European titles.
The first leg is in Madrid on April 27 and the return is in Munich on May 3.
Atletico, which eliminated defending champion Barcelona this week, is a two-time runner-up after giving up last-minute equalizing goals both times.
The draw keeps open the chance of a Madrid derby in the final as a repeat the 2014 title match. Two years ago, Atletico led 1-0 in stoppage time before Real Madrid leveled and went on to win 4-1 in extra time.
The final could also be a meeting of coach Pep Guardiola's current and future teams. Guardiola is leaving Bayern after three years to join Man City in the offseason.
The final is scheduled for May 28 at the San Siro in Milan.
(For more sports news and updates, follow Ahram Online Sports on Twitter at @AO_Sports and on Facebook at AhramOnlineSports.)