La Juventus était dans l'obligation de faire sauter le verrou de l'Atletico, qui possède la meilleure défense de la Liga espagnole avec 17 buts encaissés en 27 rencontres. Les Turinois ont eu le contrôle du ballon dès le début de rencontre. Sur un corner, Giorgio Chiellini a poussé le ballon au fond mais l'arbitre, qui a reçu la confirmation du VAR, a annulé le but pour une faute préalable de Cristiano Ronaldo sur le gardien Jan Oblak (4e). Grâce notamment au pressing parfait de Blaise Matuidi, la Juventus a continué de remporter ses duels et à multiplier les incursions. Sur un centre de Federico Bernardeschi, Ronaldo est arrivé lancé à toute vitesse et d'une tête imparable au-dessus de Juanfran a ouvert la marque (27e, 1-0).

Alors qu'ils n'arrivaient pas à se créer la moindre occasion, les Colchoneros ont failli égaliser sur une tête d'Alvaro Morata parfaitement servi par Koke dans la surface (45e+2).

La Juventus a commencé la seconde période comme elle avait fini la première. Trouvé au point de penalty par Joao Cancelo, Ronaldo a repris le ballon de la tête. Alors que l'on pensait qu'Oblak l'avait repoussé, l'arbitre a validé le but grâce à la "goal line technology" (49e, 2-0).

L'Atletico ne touchait quasiment plus le ballon et pour le punir, Massimo Allegri a étoffé son attaque avec Paulo Dybala (67e) et lui a redonné des forces vives avec Moise Kean (80e). Pour son premier ballon, le jeune avant s'est retrouvé face à face avec Oblak mais croisait trop son tir (82e). Les Colchoneros n'y étaient plus du tout et Ronaldo les a cassés en transformant un penalty pour un croque en jambes d'Angel Correa sur Bernardeschi (86e, 3-0).

Vainqueur 2-3 à l'aller, Manchester City devait conclure face à Schalke, qui a essuyé trois défaites en championnat après le match aller. Les Citizens ont tout de suite mis le pied sur le ballon face à des visiteurs faisant bloc dans leur camp. Sur une petite passe en retrait de Raheem Sterling, Sergio Aguero a raté le cadre aux six mètres (14e). Mais l'Argentin, qui avait marqué lors des trois derniers matchs de Ligue des champions, a prolongé sa série en transformant un penalty accordé avec l'assentiment du VAR pour une faute de Jeffrey Bruma sur Bernardo Silva (35e, 1-0). Ce n'était pas fini: Schalke s'est découvert et Aguero l'a sanctionné après que le VAR a confirmé que Sterling n'était pas hors-jeu au départ de l'action (38e, 2-0). Les 'Konigsblauen' étaient étourdis mais bien lancé par Oleksandr Zinchenko, Leroy Sané les a encore assommés un peu plus (42e, 3-0).

Libérés, les Skyblues ont monopolisé le ballon en seconde période. La défense allemande, qui se faisait trop facilement avoir sur les ballons en profondeur, a craqué sur un tir de Sterling dont le but a d'abord été refusé avant d'être validé par le VAR (56e, 4-0). Le feu d'artifice a continué et a tourné à la déroute pour le club de Gelsenkirchen par la faute de Bernardo Silva (71e, 5-0), Phil Foden (78e, 6-0) et Gabriel Jesus (84e, 7-0).