Tegenstander in de eindstrijd was Bayer 04 Leverkusen. De Bundesligaclub werd opvallend genoeg nog nooit kampioen van Duitsland, maar bereikte dertien jaar geleden voor het eerst de finale van het kampioenenbal die werd afgewerkt op Hampden Park in Glasgow. In de poulefase was de ploeg van trainer Klaus Toppmöller als tweede geëindigd, achter FC Barcelona.
De tweede poulefase werd wel gewonnen, waarbij Arsenal en Juventus werden geëlimineerd. Daarna werd in de kwartfinale Liverpool en in de halve finale Manchester United verslagen. Real Madrid rekende af met FC Bayern München en FC Barcelona in de laatste twee ronden.
Voor de aftrap van de apotheose op Schotse bodem werd er een minuut stilte gehouden voor het overlijden van de Oekraïense voetbalcoach Valeri Lobanovsky twee dagen eerder. Het Spaans-Duitse onderonsje zou de geschiedenis ingaan als een spannende finale met een prachtige winnende goal. Leverkusen was de underdog en kwam al snel op achterstand. Raúl sloeg in de achtste minuut toe door een verre uitgooi (!) van Roberto Carlos met links af te werken.
De aanvalsleider kon weglopen uit de rug van Lúcio en stond schuin voor het doel van Hans-Jörg Butt. Raúl maakte er het beste van, en aangezien Butt op het verkeerde been stond, hobbelde de intelligente roller zo binnen. Via een kopbal van de Braziliaan Lúcio uit een corner van Bernd Schneider maakten de Duitsers gelijk. Een klasseflits van Zidane in de extra tijd van de eerste helft zorgde voor de 1-2. Roberto Carlos gaf de bal vanaf links voor, waarna Zinedine Zidane met zijn linkervoet de bal erg hoog uit de lucht nam. Technisch briljant. Doelman Hans-Jörg Butt had geen kans.
Leverkusen ging na rust met de inmiddels ingebrachte Dimitar Berbatov opnieuw op zoek ging naar een gelijkmaker. Er kwamen kansen. Luis Figo lag het hele duel aan banden bij Diego Placente. Met nog meer dan 20 minuten te spelen, moest doelman César aan de kant van De Koninklijke vervangen worden. De 21-jarige Iker Casillas nam zijn plaats onder de lat in en voorkwam dat een gevaarlijk opzettend Leverkusen nog op gelijke hoogte kwam. Na negentig minuten mocht Real Madrid de cup met de grote oren in ontvangst nemen, met dank aan Zidane.
Bayer Leverkusen - Real Madrid 1-2 (1-2)
8. Raúl 0-1, 13. Lúcio 1-1, 45. Zidane 1-2. Scheidsrechter: Meier (Zwitserland), toeschouwers: 52.000. Gele kaarten: 45+2. Michel Salgado, 89. Roberto Carlos (Real Madrid).
Bayer Leverkusen: Butt; Sebescen (65. Kirsten), Zivkovic, Lúcio (90+1. Babic), Placente; Ramelow, Ballack, Bernd Schneider, Bastürk; Brdaric (39. Berbatov) en Neuville.
Real Madrid: César (68. Casillas); Michel Salgado, Hierro, Helguera, Roberto Carlos; Figo (60. McManaman), Makélélé (73. Flávio Conceição), Zidane; Raúl, Morientes en Solari.