Who stole the headlines and who was below-par as Bayern Munich beat Paris Saint-Germain to win a sixth Champions League trophy?
For PSG, the wait goes on. Marseille remain the only French team to win this most coveted prize as Kingsley Coman's goal just shy of the hour-mark decided the Lisbon final for Bayern Munich at the Estadio da Luz.
- PSG 0-1 Bayern - Match report
- How PSG and Bayern lined up | Match stats
- Get Sky Sports - All channels £23 a month
Coman appeared at the back post to glance home a cross from Joshua Kimmich in the 59th minute, completing a sweeping move by Bayern, who until then had been the second best side on the pitch.
His strike punished PSG's wastefulness in the first half as Neymar and Kylian Mbappe both failed to beat Bayern keeper Manuel Neuer from close range while Angel Di Maria and Ander Herrera also narrowly missed the target. Neymar sat in tears at the final whistle as Bayern celebrated, but who stood out and who failed to shine?
Keylor Navas - 7
Navas returned to the starting line-up having recovered from injury to replace Sergio Rico, and the Costa Rican produced a smart instinctive save to deny Robert Lewandowski's header - especially given the deflection off Presnel Kimpembe. Safe hands to hold onto Serge Gnabry's shot - but could do little about Coman's winner.
Thiago Silva - 7
Not the perfect send-off for the captain. In his 315th and final game, the Chelsea target was assured against Europe's top marksman and marshalled the back four superbly for an hour before the breakthrough. Important block to deny Coman a second with the shackles off the Bavarians. Booked.
Presnel Kimpembe - 7
Showed his confidence on the ball to carry out from the back on several occasions but was fortunate not to be caught out when awarded a free-kick for a foul by Thomas Muller before he presented the ball straight to Lewandowski. Made a superb goal-saving headed clearance to deny Lewandowski a simple finish moments after Coman's opener.
Thilo Kehrer - 5
An interesting narrative with the German Kehrer up against the Frenchman Coman, the PSG full-back kept his opposite number subdued in the opening 30 minutes, but was second best thereafter. Fortunate not to concede a penalty for holding back Coman and was subsequently targeted.
Juan Bernat - 6
Bernat was fired up more than most PSG players. Former president Uli Hoeness once publicly eviscerated him for a display as a Bayern player, but the Spaniard was nearly punished for allowing Lewandowski too much space after 21 minutes as the striker turned and struck the post.
Marquinhos - 8
PSG's best player. Showed his importance when winning a crucial header off Leon Goretzka from Kimmich's cross. Another brilliant interception as he sprinted back to cut out Goretzka's menacing delivery towards Lewandowski. Denied equaliser from lung-bursting run onto Angel Di Maria's pass.
Leandro Paredes - 6
Demonstrated his passing range with two fine balls to dissect the Bayern defence inside the opening 15 minutes which deserved more of an end product. Lost his composure in an erratic start to second period and was booked in fracas following foul by Gnabry on Neymar and was replaced after 64 minutes.
Ander Herrera - 6
Thomas Tuchel resisted the temptation of starting Marco Verratti and put his faith in Herrera, whose quick feet and pass presented Di Maria with a golden chance which he blazed over. Fizzing half volley deflected wide off Goretzka when destined for the bottom corner and then showed great awareness to set up Mbappe only for Neuer to keep out his shot.
Kylian Mbappe - 6
Was on the receiving end of several niggly fouls but also did his fair share of defensive work to protect Bernat down the Bayern right to keep Thomas Muller quiet. Ought to have broken the deadlock when set up by Herrera as Bayern overplayed at the back but he produced a tepid shot straight at Neuer.
Neymar - 6
Wasteful with his finishing against Atalanta and RB Leipzig, Neymar had the game's first meaningful chance when released by Mbappe but his shot was saved by the legs of Neuer. The Brazilian's best work in the first half was off the ball as he hustled and harried the Bayern back line but the game drifted away from him. Booked.
Angel Di Maria - 6
Di Maria, the co-star within PSG's attacking triumvirate, passed up a glorious chance to break the deadlock when he lost his composure at the vital moment in a cagey opening. Cute pass presented Marquinhos with fine chance to level but faded before being replaced.
Marco Verratti (for Paredes, 64 minutes) - 6
Midfielder Verratti had to settle for a place on the bench, but his introduction helped swing the momentum back in PSG's favour after Bayern threatened to overrun their opponents for a period after the winning goal.
Julian Draxler (for Hererra, 72 minutes) - N/A
Replaced Herrera as Thomas Tuchel went more offensive in the final 18 minutes but failed to impose himself on the game, making just four passes.
Eric Maxim Choupo-Moting (for Di Maria, 80 minutes) - N/A
Layvin Kurzawa (for Bernat, 80 minutes) - N/A
Manuel Neuer - 9
Reminded everyone of his qualities with important saves, including an early one from Neymar. In his sweeper keeper role, his reading of the game snuffed out numerous balls over the top meant for the pace of Mbappe or Neymar. Made three crucial saves and even denied Mbappe, incredibly, from point-blank range with linesman's flag up for offside.
Joshua Kimmich - 7
Brilliant ball to pick out Coman for the opener as Bayern had struggled to unpick the PSG defence prior to that. After a slow start defensively, he got better and better as the game wore on. Had more touches (96) than any other player on the pitch.
Jerome Boateng - 6
Seriously struggled with the pace of Mbappe and Neymar from the start and will be frustrated to go off with injury after just 25 minutes.
David Alaba - 7
Solid at the back and PSG's chances rarely came as a result of his mistakes. Centre-back has never been his favoured position but you wouldn't have guessed it in Lisbon.
Alphonso Davies - 5
After a meteoric rise, the teenager looked nervous on the big stage and struggled defensively. Going forward he was not at his best either but this won't be his last major final.
Leon Goretzka - 7
Battled hard in the middle of the park and made a couple of important blocks in the first half. Less able to influence the game going forward but helped Bayern take control of the middle.
Thiago Alcantara - 7
Just oozes class in everything he does and continued his fine recent form with a commanding display in the middle. His range of passing is a joy to behold and if that was his final Bayern appearance, it was a fine way to go. Completed 75 of his 85 passes, more than any other player.
Serge Gnabry - 5
Seemed to be nervous with early misplaced passes and failed to make his mark on the game. Lost his composure by taking out Neymar too.
Thomas Muller - 6
Usually drags defenders all over the pitch to create space but found a disciplined PSG unit hard to budge. Never stopped though.
Kingsley Coman - 9
Coman was not even expected to be in the starting line-up against the club where he spent most of his youth career. Took his goal well following Kimmich's pinpoint pass and had looked the most likely to create a chance after a slow start. Could have won a penalty on the stroke of half-time and it was a surprise to see him taken off.
Robert Lewandowski - 6
Even with limited service he troubled the PSG defence and from a half-chance saw his shot hit the inside of the post and bounce clear. Always looked like he'd pounce on any lapse of concentration.
Niklas Sule (for Boetang, 25) - 6
Introduced early after Boetang's injury and fared better than his predecessor. One silly challenge aside he dealt with PSG's attacking players well.
Ivan Perisic (for Gnabry, 68) - 6
Like Gnabry, Perisic was unable to really influence the game despite some hard-running.
Philippe Coutinho (for Coman, 68) - 6
Did not carry the same threat as the man he replaced on the left but did see a free-kick go narrowly wide of the post.
Colentin Tolisso (for Thiago) - N/A