Chelsea edged Manchester City by a solitary goal to clinch the UEFA Champions League trophy for the second time in the club's history.
In the final match in Porto, Germany attacker Kai Havertz struck the only goal three minutes before the break to reward Chelsea for a superb first-half display in which his compatriot Timo Werner missed two great opportunities.
The German youngster, Chelsea's record signing, kept his composure as he raced through and evaded goalkeeper Ederson before rolling the ball into an empty net in the 42nd minute to decide a tight encounter played in front of a 16,500 crowd.
Despite winning three of the last four Premier League titles for City, Spaniard Guardiola failed to deliver the coveted European trophy he last won with Barcelona in 2011.
For Chelsea's German manager Thomas Tuchel, the triumph comes after his Paris Saint-Germain side suffered defeat in last season's final against Bayern Munich and just four months after he took over from Frank Lampard at the west London club.
"To share it with everybody is incredible. We made it. Wow. I don't know what to feel," said Tuchel. "I was so grateful to arrive a second time (in the final). I felt different.
"The (players) were determined to win this. We wanted to be a stone in their (City's) shoe. We encouraged everybody to step up and step out, to be more brave," he said.
City exposed
While Tuchel got his approach spot on, Guardiola’s team selection was surprising with Raheem Sterling brought in on the left, neither regular holding midfielder, Fernandinho or Rodri, picked and Ilkay Gündoğan left to protect the backline.
It quickly became apparent the move had left City’s defense exposed with Chelsea creating early chances, three of which fell to Werner who failed to capitalize – miskicking one, shooting softly at Ederson and then finding the side-netting.
Gündoğan’s already difficult task got harder when he was booked for a foul on Mason Mount in the 34th minute.
Chelsea also suffered a setback when its experienced Brazilian center-back Thiago Silva went down awkwardly after a header and had to limp off six minutes before the break, being replaced by Andreas Christensen.
However, three minutes later Chelsea struck. Midfielder Mount split the City defense with a superb through ball and Ederson rushed out of his goal but was unable to stop Havertz from skipping past him and slotting into the unguarded net.
City’s night got worse when key midfielder Kevin De Bruyne had to go off with a concussion injury after an accidental clash with Antonio Rudiger left him on the ground, with Guardiola throwing on Brazilian striker Gabriel Jesus in his place.
Christian Pulisic came on for Chelsea to become the first American to play in a Champions League final and almost the first to score when he was slipped in by Havertz but then drifted his shot just wide of the post.
Hopeful effort
City gradually began to get the upper hand but its usual composure was lacking and it was not until deep into stoppage time that it went close with a hopeful effort from Riyad Mahrez that clipped the bar.
The final whistle set off wild celebrations for the Chelsea fans who had flown in for the game, while dejected City supporters headed off for flights back to Manchester.
"I would like to say it was an exceptional season for us. Unfortunately, we couldn’t win. We tried, but we couldn’t do it and will work harder from here," added the Spaniard, whose side won the League Cup to go with its Premier League crown.
Tuchel has faced City three times in six weeks and won every time. Chelsea's Russian owner Roman Abramovich, watching from the stands, must have had a wry smile to himself as once again his ruthless approach to managerial changes has paid off.