Đội hình xuất phát:
Borussia Dortmund: Kobel, Ryerson, Hummels, Schlotterbeck, Maatsen, Sabitzer, Can, Sancho, Brandt, Adeyemi, Fullkrug.
Real Madrid: Courtois, Carvajal, Rudiger, Nacho, Mendy, Valverde, Camavinga, Kroos, Bellingham, Rodrygo, Vinicius.
Ghi bàn: Carvajal (74'), Vinicius (83').
Với đội hình đồng đều và được đánh giá cao hơn, Real dễ dàng nắm giữ quyền kiểm soát thế trận. Tuy nhiên, Dortmund chơi phòng ngự, phản công rất khoa học khiến Vinicius Junior gặp rất nhiều khó khăn trong việc tổ chức tấn công. Phút 12, Federico Valverde đi bóng từ cánh phải vào trung lộ rồi tung ra cú sút xa nhưng thiếu chính xác.
Hai phút sau, Dortmund đáp trả bằng đợt phản công sắc bén. Sau nỗ lực khống chế bóng, Niclas Fullkrug thực hiện đường chuyền vừa tầm cho Julian Brandt dứt điểm đi chệch cột dọc khung thành thủ môn Thibaut Courtois.
Không chỉ phòng ngự kín kẽ, Dortmund còn thường xuyên tổ chức được những đợt lên bóng sắc nét. Phút 21, Mats Hummels thực hiện đường chuyền từ bên phần sân nhà cho Karim Adeyemi phá bẫy việt vị rồi xâm nhập vòng cấm. Tuy đã đi bóng vượt qua thủ thành Courtois nhưng chân sút 22 tuổi không thể dứt điểm trước sự áp sát của Daniel Carvajal.
Phút 23, Ian Maatsen thực hiện đường chuyền ở trung lộ vào trong vòng cấm cho Niclas Fullkrug dứt điểm dội cột dọc khung thành Real. Sau đó, tuyển thủ Đức thực hiện đường chuyền ngang nhưng không có đồng đội nào băng lên dứt điểm.
Mặc dù tiếp tục nhường quyền kiểm soát thế trận cho đối thủ, song Dortmund vẫn là đội tạo ra nhiều cơ hội ngon ăn hơn. Phút 28, Karim Adeyemi dẫn bóng xâm nhập vòng cấm rồi dứt điểm chéo góc khiến thủ thành Courtois phải đổ người cản phá. Ngay lập tức, Niclas Fullkrug băng vào đánh đầu bồi nhưng bóng đi không trúng đích.
Phút 41, Brandt thực hiện đường chuyền từ cánh trái vào trung lộ để Marcel Sabitzer tung ra cú sút xa khiến thủ môn Courtois phải đổ người cản phá.
Sang hiệp hai, những đợt tấn công của Real đã giàu tính đột biến hơn. Phút 48, Toni Kroos thực hiện pha đá phạt hiểm hóc ở cự ly khoảng 25m chếch sang cánh trái khiến thủ thành Gregor Kobel phải trổ tài cản phá.
Phút 49, Toni Kroos thực hiện đường chuyền vừa tầm từ quả đá phạt góc bên cánh trái vào trong vòng cấm để Carvajal bật cao đánh đầu vọt xà ngang khung thành Dortmund.
Quãng thời gian tiếp theo, Real vẫn tiếp tục gia tăng sức ép về phía khung thành Dortmund. Phút 57, Nico Schlotterbeck đánh đầu phá bóng thiếu dứt khoát trong vòng cấm giúp Carvajal có cơ hội bắt volley nhưng thủ thành Gregor Kobel đã đọc được ý đồ.
Trước sức ép của Real, Dortmund tổ chức được ít pha phản công hơn so với hiệp 1. Phút 63, Karim Adeyemi tạt bóng từ cánh trái vào trong vòng cấm để Niclas Fullkrug bay người đánh đầu nhưng không thể chiến thắng được sự xuất sắc của thủ thành Courtois.
Càng về cuối trận, Real càng nỗ lực đẩy cao nhịp độ tấn công. Phút 69, Vinicius thực hiện đường chuyền vừa tầm từ cánh trái vào trong vòng cấm nhưng cú đánh đầu của Jude Bellingham lại đi đưa bóng đi chệch cột dọc.
Phút 74, Kroos chuyền bóng vừa tầm từ quả đá phạt góc bên cánh trái vào trong vòng cấm để Carvajal bật cao đánh đầu tung lưới thủ môn Gregor Kobel, mở tỷ số cho Real.
Bàn thắng này giúp Real trút bỏ áp lực tâm lý và thi đấu thanh thoát hơn. Phút 77, Eduardo Camavinga nỗ lực thực hiện đường chuyền trong vòng cấm để Bellingham dứt điểm nhưng Nico Schlotterbeck đã kịp nhoài người cản phá.
Phút 80, Real được hưởng quả đá phạt chính diện ở cự ly hơn 20m. Đáng tiếc là cú đá của Kroos không thể chiến thắng được sự xuất sắc của thủ thành Gregor Kobel. Đúng 1 phút sau, Kobel lại trổ tài cản phá cú sút xa của Camavinga.
Không còn gì để mất, HLV Edin Terzic buộc phải tung Sebastien Haller và Donyell Malen vào sân nhằm tăng cường khả năng tấn công cho Dortmund. Phút 83, Ian Maatsen thực hiện đường chuyền sai đến thẳng vị trí của Bellingham. Tiền vệ người Anh lập tức kiến tạo cơ hội để Vinicius lập công, nhân đôi cách biệt cho Real.
Quãng thời gian còn lại, Dortmund nỗ lực tràn lên tấn công. Phút 87, Niclas Fullkrug đưa được bóng vào lưới thủ môn Courtois nhưng trọng tài Slavko Vincic không công nhận vì chân sút người Đức đã việt vị trước khi ghi bàn.
Nhờ sự chắc chắn nơi hàng thủ nên Real đã bảo toàn được chiến thắng 2-0 cho đến khi trọng tài Slavko Vincic nổi hồi còi kết thúc 90 phút. Như vậy, đội bóng Hoàng gia đã có lần thứ 15 vô địch Champions League (trước đây là cúp C1 châu Âu), nhiều hơn 8 lần so với CLB có thành tích tốt thứ 2 là AC Milan.