After the abandonment of their team leader Egan Bernal earlier in the week Ineos Grenadiers were determined to take some consolation from the race, forcing four of their riders up the road in the day's 30-rider breakaway.
Carapaz and Kwiatkowski dropped all their rivals over the day's relentless climbs, but it was Kwiatkowski who was allowed roll over the line first, almost side by side with Giro d'Italia champion Richard Carapaz.
Primož Roglič (Jumbo-Visma) secured the yellow jersey for another day with just two stages.
How it happened
Stage 18 of the 2020 Tour de France was another huge climbing test, following on from a brutal day of race over the Col de la Madeleine and the Col de la Loze (opens in new tab) on stage 17.
But the final mountain stage of this Tour, 175km from Méribel to La Roche-sur-Foron, actually featured more climbing that the previous day, spread over five classified climbs, which started almost immediately after the flag dropped.
The first climb was the Cormet de Roselend (18.6km at 6.1 per cent average), which crested 46km into the stage and was guaranteed to throw riders out the back early on the stage.
That climb was followed quickly by the Côte de la route des Villes (3.2km at 6.6 per cent) and then the Col des Saisies (14.6km at 6.4 per cent), both of which followed in the next 40km.
After another sharp descent the peloton were carried onto the Col des Aravis (6.7km at seven per cent) before one last brutal classified climb - the Montée du plateau des Glières (6km to 11.2 per cent), which topped out 30km from the finish.
The climb also featured a 1.8km-long gravel sector very close to the summit.
But reaching the top of the last climb was not the end for the riders, as they still had to descent the climb to then take on the uncategorised Col des Fleuries, with the stage ending after the downhill drag from that small peak.
Tipped as a day for the breakaway to take stage honours, it was no huge shock that all teams wanted to make it into the day’s escape, sparking a high-speed start to the stage with a 30-rider group breaking clear early on.
Sam Bennett (Deceuninck - Quick-Step) and Peter Sagan (Bora-Hansgrohe) both made it into the move to fight for the green jersey points on offer just over 10km into the day.
Bennett took the maximum points in the intermediate sprint, with Matteo Trentin (CCC Team) second and Sagan having to settle for third, before the sprinters settled in for a long day in the mountains.
As the breakaway extended their advantage out to 90 seconds, back in the bunch B&B Hotels-Vital Concept were desperate to make amends having missed the move and rode hard at the front of the peloton, but they were unable to correct their major mistake and were forced to give up the chase as the race hit the Roselend.
After a number of riders were dropped on the climb, 28 riders held at the front of the race including the likes of Thomas De Gendt (Lotto-Soudal), Julian Alaphilippe (Deceuninck - Quick-Step), Marc Hirschi (Sunweb) and Pello Bilbao (Bahrain-McLaren).
Ineos Grenadiers were best represented in the group with four riders, including Michał Kwiatkowski and Richard Carapaz.
Giro d’Italia champion Carapaz and Hirschi were the strongest over the first classified climb, with Carapaz leading, as the pair pushed on over the top.
That duo pulled out a 20-second advantage on the rest of the break, with the peloton still 2-55 behind the escapees.
Onto the Côte de la Route des Villes and three more riders had joined Hirschi and Carapaz, with Kwiatkowski, Bilbao and Nicolas Edet (Cofidis) closing the distance, Hirschi first over the top of the climb .
Back in the bunch Jumbo-Visma led the charge but the break continued to extend their advantage out beyond eight minutes.
Then on the Col des Saisies Edet began to lose contact, with Kwiatkowski, Carapaz, Bilbao and Hirschi all reaching the top of the climb together, but disaster struck for Hirschi on the descent when his mesmerising descending skills finally failed him and he slid out on a fast left-hand turn.
The Swiss rider was able to get back on the bike, but lost 45 seconds to the front of the race and was never able to rejoin the group.
With two classified climbs left to tackle, it was Kwiatkowski, Carapaz and rival Bilbao who were glued together and they were still riding strong onto the horribly steep plateau des Gliéres.
Bilbao was finally distanced on the climb, with the Ineos pairing riding off into the distance.
It was on the Gliéres that the GC race also exploded once more back in the peloton, with Mikel Landa and Wout Poels (Bahrain-McLaren) surging forward with more than 30km still to race.
Under the familiar pressure applied by Wout van Aert for Jumbo-Visma, the GC group was reduced to just eight riders, including Primož Roglič, Tadej Pogačar (UAE Team Emirates), Miguel Ángel López (Astana) Richie Porte (Trek-Segafredo), with Landa 20 seconds up the road but soon being caught.
The GC group then hit 1,800m unpaved sector of the climb, with Roglič and Pogacar the strongest riders, setting a tough pace.
Porte suffered an awfully timed (if inevitable) puncture on the gravel and lost contact with the group, getting a fairly swift bike change but still losing 35 seconds on the road.
Onto the descent of the Gliéres Kwiatkowski and Carapaz still had almost five minutes over the GC group 4-49 behind the leaders, with 15km left to the line.
The yellow jersey group had been reduced to Roglič and Sepp Kuss from Jumbo, Pogačar, López, Landa and Bilbao for Bahrain, and Enric Mas (Movistar), with just an uncategorised climb to get over before the downhill run to the line.
Porte chased with determination and miraculously made it back to the favourites as the pace fell away.
For the stage victory, Kwiatkowski and Carapaz rode to the line side by side a long way ahead of the competition, with Kwiatkowski allowed to get his wheel across the line first.
Behind the GC group was effectively neutralised after an attritional day of racing, with Roglič safely holding onto his race lead for another day.
The race continues with a potentially unpredictable day on stage 19, over 166km from Bourg-en-Bresse to Champagnole - potentially an opportunity for the sprinters, but with a fourth category climb and a lot of uncategorised ramps on the way, it will be a tough ask for the fast men to make it to the finish in top shape.
Tour de France 2020, stage 18: Méribel to La Roche-sur-Foron (175km)
1. Michał Kwiatkowski (Pol) Ineos Grenadiers, in 4-47-33
2. Richard Carapaz (Ecu) Ineos Grenadiers, at same time
3. Wout van Aert (Bel) Jumbo-Visma, at 1-51
4. Primož Roglič (Slo) Jubmo-Visma, at 1-53
5. Tadej Pogačar (Slo) Jumbo-Visma, at same time
6. Richie Porte (Aus) Trek-Segafredo, at 1-54
7. Enric Mas (Esp) Movistar
8. Mikel Landa (Esp) Bahrain-McLaren
9. Damiano Caruso (Ita) Bahrain-McLaren
10. Tom Dumoulin (Ned) Jumo-Visma, all at same time
General classification after stage 18
1. Primož Roglič (Slo) Jumbo-Visma, in 79-45-30
2. Tadej Pogačar (Slo) UAE Team Emirates, at 57s
3. Miguel Ángel López (Col) Astana, at 1-27
4. Richie Porte (Aus) Trek-Segafredo, at 3-06
5. Mikel Landa (Esp) Bahrain-McLaren, at 3-28
6. Enric Mas (Esp) Movistar, at 4-19
7. Adam Yates (GBr) Mitchelton-Scott, at 5-55
8. Rigoberto Urán (Col) EF Pro Cycling, at 6-05
9. Tom Dumoulin (Ned) Jumbo-Visma, at 7-24
10. Alejandro Valerde (Esp) Movistar, at 12-12
Thank you for reading 10 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1