With Jonas Vingegaard’s second Tour de France victory confirmed, it’s time to look back on the drama provided by three weeks of scarcely-believable action in the great race’s 110th edition.
The first fortnight of the 2023 Tour de France was an instant classic. Vingegaard and fellow protagonist Tadej Pogačar laid on an epic back-and-forth battle, with both landing punches but failing to fire a knockout blow.
Ultimately, Pogačar’s challenge faded in the Tour’s final week – perhaps suffering from a lack of long-term conditioning as his preparation was hampered by a broken wrist during the Spring Classics – but full credit is due to Jonas Vingegaard who underlined his status as the greatest Grand Tour cyclist in the world with a performance for the ages.
Join us as we run back through all the action, sub-plots, and headline-making drama of the 2023 Tour de France, stage by stage.
Stage 1: Bilbao to Bilbao – 182 km
Adam Yates dropped his twin brother Simon in the final kilometer to power to victory in a thrilling conclusion to Stage 1 of the 2023 Tour de France.
The opening-stage drama lived up to expectations as the British pair (both 30) broke clear of the field with 9 km to go, working in tandem to forge a gap from an ominous chasing group containing yellow jersey favorites Tadej Pogačar and Jonas Vingegaard.
The win was all the more remarkable for the fact that Adam Yates had served as a launchpad for UAE Emirates teammate Pogačar’s attack just moments before his own, towing the Slovenian and his Danish rival Vingegaard up the final climb of Pike Bidea 10 km from the line.
Despite riding for different teams (Simon represents Jayco-AlUla), the twin brothers collaborated in explosive fashion to burst clear of a lead group containing many of the strongest riders in this year’s Tour, but seemingly hindered by indecision as they summited the final climb.
Stage 2: Vitoria-Gasteiz to Saint-Sébastien – 209 km
Victor Lafay launched a blistering acceleration to distance himself from the bunch – and pre-stage favorite Wout van Aert – in the final kilometer, as Stage 2 of the 2023 Tour de France arrived in San Sebastián.
Lafay crossed the line a bike length ahead of van Aert, who was seen to punch his handlebars in frustration at the finish line as he lost the sprint.
The Frenchman’s victory marks his first stage win at the Tour de France, and the first by a Cofidis rider in over 15 years.
Stage 3: Amborebieta-Etxano to Bayonne – 185 km
Alpecin-Deceuninck’s Jasper Philipsen crossed the line a wheel’s length ahead of Phil Bauhaus in a thrilling bunch sprint in Stage 3, as the Tour de France returned to French soil.
The stage win was aided by an incredibly impressive lead-out from teammate and cyclocross World Champion Mathieu van der Poel.
Philipsen was just too fast for last year’s green jersey winner Wout van Aert, as the visibly frustrated Belgian missed out on what was a second opportunity in a row to take a stage win this year.
Stage 4: Dax to Nogaro – 182 km
Jasper Philipsen claimed his second consecutive victory, outsprinting Caleb Ewan by half a wheel at the line in Nogaro.
The riders covered 181.8 km from Dax to Nogaro, with Philipsen’s teammate Mathieu van der Poel once again providing a crucial lead-out.
The stage was marred by multiple crashes, particularly in the final kilometers where the hectic mix of sprinters’ teams and GC contenders vying for position led to chaos.
The most prominent victim was Fabio Jakobsen (Soudal-QuickStep), who managed to get back on his bike and finish the stage despite being visibly injured.
Stage 5: Pau to Laruns – 165 km
BORA-hansgrohe’s Jai Hindley stole a march on his GC rivals on Stage 5, sustaining a powerful solo attack for almost 20 km to take both the yellow jersey and the first mountain stage of the 2023 Tour de France.
It was the Australian’s first stage win in his debut Tour de France, after winning the Giro d’Italia last year. Hindley snatched the yellow jersey from UAE’s Adam Yates, on what was a poor day for UAE.
An impressive attack by in-form Jonas Vingegaard broke Tadej Pogačar, taking over a minute out of the pre-race favorite. Vingegaard now sits 2nd in the General Classification with a 53-second lead over his Slovenian rival.
Vingegaard, supported by his Jumbo-Visma teammate Sepp Kuss, attacked the group of GC favorites, with Pogačar managing to stay on his wheel.
But the young Dane showed his strength with blistering acceleration, distancing himself from Pogačar who was unable to match Vingegaard’s speed.
Stage 6: Tarbes to Cauterets-Cambasque – 145 km
Tadej Pogačar delivered the perfect response to his Stage 5 struggles with a destructive late attack to drop Jonas Vingegaard and claim an epic victory on Stage 6 of the 2023 Tour de France.
Even more important than the psychological victory of decisively dropping Vingegaard for the first time in his career – just a day after many were questioning his chances of recovering any kind of title push – was the 28 seconds Pogačar took out of his Danish rival, reducing the GC deficit by half.
Stage 5 winner and overnight leader Jai Hindley finished 2:39 down to surrender the yellow jersey to Vingegaard.
In a stage for the ages, Vingegaard and his Jumbo-Visma teammates launched aggressive attacks on Pogačar on the iconic Col du Tourmalet 50 km from the finish in a bid to cash in on his apparent weakness, with his deputy Wout van Aert positioned to ride in tandem with the Dane to the finish to twist the knife and build an unassailable lead.
However, the failure to dislodge Pogačar on the Tourmalet caught Jumbo-Visma by surprise and left them scrambling to improvise a new gameplan as the Slovenian stalked them to the base of the final climb.
Pogačar initially appeared content to mark Vingegaard to the finish, backing his superior sprint to claim the stage win while containing any further damage to his GC hopes.
However, the Slovenian’s natural racing instincts came to the fore when he launched a blistering attack 3 km from the finish, with Vingegaard unable to respond.
In the end, Vingegaard crossed 24 seconds after Pogačar and lost a further 4 seconds in bonuses, slashing his General Classification lead from 53 to 25 seconds.
Stage 7: Mont-De-Marsan to Bordeaux – 170 km
In a gripping finale to Stage 7, Jasper Philipsen clinched his third win of the 2023 Tour, defeating Mark Cavendish in a heart-stopping sprint finish.
When Cavendish, seeking to break the record for the most stage wins in Tour history, took a flyer and hit out for glory, Philipsen had to react swiftly.
Thanks to Van der Poel’s perfect lead-out, Philipsen was able to slip into Cavendish’s wheel and launch his own sprint, defeating the Brit at the last moment.
It would prove to be the 34-time stage winner’s last-ever finish at the Tour de France, as Cavendish crashed out the following day with retirement planned at the end of the season.
Stage 8: Libourne to Limoges – 201 km
Denmark’s Mads Pedersen overpowered the pack to sprint to victory on Stage 8 in Limoges, denying Jasper Philipsen a fourth stage win of the 2023 Tour de France.
Wout van Aert came home third, his challenge scuppered after being blocked in by his own Jumbo-Visma teammate, Christophe Laporte.
The stage was marred by the crash suffered by Mark Cavendish 60 km from the finish, which forced him to abandon his final Tour de France – and his bid for a record 35th stage victory – with a suspected broken collarbone.
Yellow jersey-wearer Jonas Vingegaard and key rival Tadej Pogačar came home safely in the peloton, but Simon Yates lost 47 seconds in a crash roughly 6 km from the line.
Belgium’s Steff Cras, who was 13th in the General Classification, was also forced to abandon after crashing in the same incident as Yates.
Stage 9: Saint-Léonard-De-Noblat to Puy de Dôme – 184 km
Canada’s Michael Woods pulled off a career-best victory on the iconic Puy de Dôme, overhauling Matteo Jorgenson within the final kilometer on Stage 9 of the 2023 Tour de France.
The 182 km stage, which culminated in a merciless 13 km summit finish up the Puy de Dôme, began with an immediate formation of a 14-man breakaway.
Woods showed his phenomenal climbing prowess, catching and passing the heartbroken Jorgenson in the final 400 meters of the legendary climb.
Jorgenson had led the stage for a significant portion but was passed in the last stretch by not only Woods but also Pierre Latour and Matej Mohorič, resulting in a bitter fourth-place finish.
Meanwhile, the battle for the yellow jersey saw some shake-ups as Pogačar managed to gain an 8-second advantage over Vingegaard.
The Slovenian Pogačar sprinted powerfully in the final few hundred meters, leaving the Dane to recover from a small loss.
Stage 10: Vulcania to Issoire – 167 km
Spain’s Pello Bilbao claimed a long-awaited Tour de France stage victory with a tactically astute breakaway victory on Stage 10.
Krists Neilands ambitious solo break looked set to pay off when the chasing group of five – including Bilbao – started playing tactical games when they should have been hunting him down with 10 km to go.
However, they eventually regained some discipline to absorb Neilands and set up a sprint finish between themselves.
Bilbao was always in pole position as the strongest sprinter in the breakaway, and after a last-ditch attack by Georg Zimmerman 1 km from the line failed to distance the Spaniard, he shot clear to emotional celebrations on the line in Issoire.
In an emotional post-race interview, Bilbao struggled to compose himself as he dedicated his victory to Gino Mäder, his Bahrain Victorious teammate who was tragically killed during the Tour de Suisse in June at the age of 26.
Stage 11: Clermont-Ferrand to Moulins – 180 km
Stage 11 of the 2023 Tour de France saw Belgian sprinter Jasper Philipsen secure his fourth win of the race in a thrilling sprint finish in Moulins.
The stage, stretching from Clermont-Ferrand to Moulins over 179.8 kilometers, was a relatively flat affair, making it a prime opportunity for the sprinters to shine.
Philipsen navigated the chaotic final sprint superbly, especially considering he was without his usual lead-out man Mathieu van der Poel, who had been suffering from illness.
The Belgian sprinter had to find the right wheel to follow in the final rush to the finish line. He managed to latch onto Dylan Groenewegen‘s wheel, who opened his sprint early, allowing Philipsen to catapult himself to victory in the final meters.
Stage 12: Roanne to Belleville-en-Beaujolais – 169 km
Ion Izagirre took a brilliant solo breakaway victory on Stage 11 of the Tour de France with arguably the greatest ride of his storied career.
A select chasing group contained threats such as Thibaut Pinot and Matteo Jorgensen but never had the legs or organization to seriously challenge the outstanding Izagirre, who sustained a comfortable gap to the finish.
Overall race leader Jonas Vingegaard and rival Tadej Pogačar both finished safely in the peloton, with no notable changes in the General Classification on Stage 12 despite several aggressive attacks from the big players early in the day.
Stage 13: Châtillon-Sur-Chalaronne to Grand Colombier – 138 km
In what turned out to be an electrifying Stage 13 of the 2023 Tour de France, Michał Kwiatkowski of Ineos Grenadiers broke away from the peloton to achieve a well-deserved victory atop the Grand Colombier.
The battle commenced right from the start at Châtillon-sur-Chalaronne, with the peloton showcasing a blistering average speed of over 50 km/h.
As the riders approached the 110th km, a massive breakaway, formed by some of the top climbers of the Tour, started to shake things up.
Kwiatkowski managed the last climb perfectly, catching and overtaking the leading trio composed of Maxim Van Gils (Lotto Dstny), Harold Tejada (Astana Qazaqstan Team), and James Shaw (EF Education-EasyPost) in a swift move.
His efforts resulted in a gap that the peloton, even with UAE’s relentless pursuit, couldn’t bridge.
The UAE team bossed the yellow jersey group, dictating a surprisingly conservative pace up the climb to build a platform for an attack by their superstar leader Tadej Pogačar.
Their efforts, however, were overshadowed by Kwiatkowski’s exceptional performance and Pogačar was left battling for bonus seconds in the General Classification (GC).
Stage 14: Annemasse to Morzine Les Portes Du Soleil – 152 km
Carlos Rodriguez (Ineos Grenadiers) claimed a brilliant victory on Stage 14 with a nerveless descent into Morzine as the electrifying duel between Tadej Pogačar and Jonas Vingegaard ultimately ended in a stalemate.
The final climb up the hors catégorie Col de Joux Plane delivered high drama as anticipated, but neither Pogačar nor Vingegaard could land a knockout blow in what became a cagey, tactical contest.
Vingegaard will certainly be the happier when the dust settles, not just for maintaining his lead but also for the psychological blow of beating Pogačar in the sprint for bonus seconds at the top of the Col de Joux Plane – although the Slovenian’s own attack moments before was frustratingly thwarted by an ill-placed pair of photographer’s motorbikes.
Pogačar was unable to force a gap from Vingegaard on the descent, but took the bonus time for second place to cancel out the Dane’s advantage from the summit.
Stage 15: Les Gets Les Portes Du Soleil to Saint-Gervais Mont Blanc – 180 km
Wout Poels claimed a superb first Tour de France win on Stage 15 in Saint-Gervais de Mont-Blanc, as Tadej Pogačar failed to land a hammer blow against Jonas Vingegaard in the battle for yellow.
Poels dropped Wout van Aert decisively on the final climb, pushing on to the line with an advantage of over two minutes for the finest result of his distinguished career.
Given van Aert’s exceptional sprinting ability, Poels knew dropping him early on the final climb was essential – and the Dutch veteran duly obliged.
The race for the yellow jersey behind followed what is becoming a familiar template in this Tour de France, with Vingegaard and Pogačar matching each other as domestiques drop one by one, before the Slovenian lights the afterburners to attack in the final kilometer.
Pogačar’s attack lacked the explosiveness of previous days, however, and Vingegaard was able to stay glued to his wheel to maintain his ten-second advantage into the Tour’s final week.
With hindsight, this moment foreshadowed the final week of the Tour, which would see Vingegaard remain steadfast as Pogačar’s challenge crumbled away.
Stage 16: Passy to Combloux – 22 km (Individual Time Trial)
Defending champion Jonas Vingegaard rode the time trial of his career to eclipse rival Tadej Pogačar and take a potentially Tour-winning 1 minute and 38 seconds out of the Slovenian in his first stage win of the year.
At the day’s end, Pogačar sat a daunting 1 minute and 48 seconds behind Jonas Vingegaard in the General Classification, a gap made to feel all the greater given how impossible it proved to separate the pair in the Tour’s first fortnight.
It was clear within minutes of both the GC favorites starting the course that Vingegaard was on blistering form and immediately began taking time out of Pogačar.
Pogačar still rode an impressive time trial on the hilly course to Combloux, finishing 1 minute and 13 seconds ahead of third-placed Wout van Aert, but was no match for the devastating pace of Vingegaard.
Despite starting two minutes later, Vingegaard was just 22 seconds from catching Pogačar on the road.
Pogačar himself caught Carlos Rodriguez ahead of him, providing a visual demonstration of the extent to which the two rivals stand head and shoulders above the field.
Stage 17: Saint-Gervais Mont Blanc to Courchevel – 166 km
AG2R Citroën’s Felix Gall launched an impressive solo attack with 6 km to go of the toughest climb of this year’s Tour – the Col de Loze – and held his lead to the finish despite the efforts of Simon Yates and Jonas Vingegaard.
AG2R Citroën displayed flawless tactics as they rode on the front of the longstanding breakaway from the very bottom of the brutal climb.
Previous AG2R team leader Ben O’Connor took the brunt of the work as a super-domestique to new team leader Felix Gall.
Meanwhile, yellow jersey and defending champion Jonas Vingegaard all but won this year’s Tour de France as Tadej Pogačar hemorrhaged time, failing to keep up with the pace set by Ineos Grenadiers in the yellow jersey group.
At the day’s end, Jonas Vingegaard sat 7 minutes and 35 seconds clear of 2nd-placed Pogačar, all but confirming victory in this year’s Tour de France with two consecutive killer blows in the Stage 16 time trial and on Stage 17 in the mountains.
It was a sad sight to see, as Pogačar said on the UAE Team radio “I’m gone, I’m dead”, as he dropped off the back.
The credit has to go to Jonas Vingegaard, though, who dropped the remainder of the group shortly after Pogačar cracked and chased for the stage win, eventually finishing 3rd in today’s stage.
It goes to show how strong Felix Gall’s ride was, though, that despite the fact that the yellow jersey was hunting him down in the best form of his life, he essentially retained his time gap, losing very little time to Vingegaard and his efforts won him his first ever stage at the Tour.
Stage 18: Moûtiers to Bourg-En-Bresse – 186 km
Danish Soudal-QuickStep rider Kasper Asgreen outsprinted the remainder of a small 4-man breakaway to win a breathtaking Stage 18 as an unorganized peloton came within seconds of catching them at the finish line.
The breakaway, which originally included Victor Campanearts, Jonas Abrahamsen, and stage winner Kasper Asgreen, began with over 170 km to go, and was later joined by Pascal Eenkhoorn during the intermediate sprint.
Such an early breakaway initially appeared to carry little threat, but somehow sustained a lead right to the finish line, with the rest of the peloton mere meters from catching them as Kasper Asgreen outsprinted Eenkhoorn and Abrahamsen.
The break was limited to 1 minute and 30 seconds by the peloton and was continuously eaten away from around 150 km of the stage to go, but disorganization in the peloton and pure strength by the breakaway riders sustained them.
Stage 19: Moirans-en-Montagne to Poligny – 173 km
Slovenian Bahrain-Victorious rider Mohorič took Stage 19 with an impressive lunge to the finish line that beat the previous day’s winner – Kasper Asgreen – by a hair, confirmed only by a photo finish.
The pair were part of a longstanding breakaway from around 30 km with AG2R’s Ben O’Connor, sustaining a lead of around 30 seconds against an aggressive pursuit by the likes of Mathieu van der Poel, Jasper Philipsen, Mads Pedersen, and Tom Pidcock.
Ben O’Connor’s slightly longer-range attack with 500 meters to go only served to lead out Kasper Asgreen, with Matej Mohorič on his wheel. The two then engaged in a battle to the finish line that was too close to tell by eye.
Milan-San Remo winner Mohorič was reduced to tears once the nerve-racking finishing photo check was completed, confirming his third career Tour de France stage win.
The pair were evenly matched in the sprint, but Mohorič’s lunge was just slightly better timed than Asgreen’s, and his front wheel crossed the line first by mere centimeters.
Stage 20: Belfort to Le Markstein Fellering – 133 km
The penultimate stage of the 2023 Tour de France turned into a tense, tactically charged race with Tadej Pogačar delivering a stunning performance to win the stage.
Beginning the day, the spotlight was on Thibaut Pinot, the French rider attempting to seize the opportunity for a home victory.
An aggressive final sprint marked the culmination of a day filled with high-octane tactics and attacks, with a flurry of GC contenders battling for supremacy.
The riders faced an early challenge with the daunting Ballon d’Alsace, an 11.5 km climb at 5.3%, setting the stage for what was to come.
The stage also witnessed a series of dramatic events, with a crash involving Carlos Rodriguez who showed his grit by continuing to race no matter the cuts to his face and arm.
Finally, it was Tadej Pogačar who emerged victorious, pulling clear of Vingegaard in the final 300 meters to win by several bike lengths.
Stage 21: Saint-Quentin-En-Yvelines to Paris Champs-Élysées – 115 km
Stage 21 of the 2023 Tour de France saw a thrilling conclusion in Paris as Jordi Meeus of BORA-hansgrohe emerged victorious in a razor-thin sprint finish.
The final stage of the race started off as a relaxed procession toward the French capital, with riders enjoying the tradition of champagne toasts and photo opportunities.
However, once the peloton entered Paris, the atmosphere shifted from casual to competitive.
Tadej Pogačar was one of the main animators of the race, launching multiple attacks on the Champs-Elysées. With the cobblestones as his backdrop, the Slovenian seemed keen to add to his impressive Tour de France resume.
Meanwhile, the peloton kept a high pace, hitting speeds of up to 60 km/h (37 mph) on the final laps of the 6.8 km circuit.
Jordi Meeus of BORA-hansgrohe edged out Jasper Philipsen in a heart-stopping sprint, securing his first-ever stage win in the Tour de France.
The Belgian rider, overjoyed with his victory, expressed his disbelief post-race.
At the same time, Jonas Vingegaard of Jumbo-Visma crossed the line alongside his teammates, confirming his overall victory in the 2023 Tour de France.