Le Real est venu à bout du Bayern en prolongation (4-2) grâce à un triplé de Ronaldo, qui a atteint puis dépassé la barre des 100 buts en C1, tandis que l'Atlético a été solide à Leicester (1-1) en quart de finale retour.
Les 'Merengues' deviennent ainsi le premier club à rejoindre pour la 7e fois d'affilée le dernier carré de la plus prestigieuse des Coupes d'Europe.
La partie, intense, s'est dénouée après la pause, marquée en tribunes par quelques nouveaux incidents sporadiques entre supporters allemands et policiers espagnols.
Robert Lewandowski a décanté la rencontre sur penalty (53) ; malheureusement pour Carlo Ancelotti, les Madrilènes ont pu égaliser grâce à Ronaldo (76). Mais l'habituel sauveur Sergio Ramos, poussé à la faute par le buteur polonais, a marqué contre son camp dans la foulée (77), envoyant les deux formations en prolongation. L'expulsion dans la foulée de Vidal (84) a cependant porté un coup au moral des Allemands.
Un triplé de 'CR7', qui avait déjà frappé deux fois en Allemagne et compte désormais 101 buts en C1, a permis aux tenants du titre d'éviter le drame : d'une puissante volée du gauche (105), puis en reprenant une offrande de Marcelo (109), la star portugaise a encore brillé, avant que Marco Asensio n'enfonce le clou (4-2, 112).
Même si le 2e but de Ronaldo, inscrit en position de hors-jeu, risque de faire jaser.