Giro d’Italia 2026 Stage 21 recap: Jonas Vingegaard completes historic grand slam as Jonathan Milan wins final stage in Rome

Giro d'Italia
Stage 21 | Flat | Men | 31.05.2026
Live
Live Updates

  • All
  • Highlights
19:02
Jersey - Pink (Giro)
19:02
Jersey - Pink (Giro)
VINGEGAARD JOINS GREATS WITH GIRO WIN AS MILAN BOSSES STAGE 21 IN ROME
Jonas Vingegaard (Visma-Lease a Bike) became the eighth rider in history – and the first of his generation – to win all three of cycling’s Grand Tours after the Dane safely finished in the peloton in Stage 21 of the Giro d’Italia, won emphatically in Rome by the Italian sprinter Jonathan Milan (Lidl-Trek).
Vingegaard won five mountaintop finishes in a one-sided 109th edition of the Giro on his way to beating his nearest challenger, the Austrian Felix Gall (Decathlon CMA CGM), by 5:22. Australia’s Jai Hindley (Red Bull-Bora Hansgrohe) – the 2022 winner – completed the podium at 6:25.
Dutchman Thymen Arensman (Netcompany INEOS) and Canadian champion Derek Gee-West (Lidl-Trek) took the final two positions in the top five ahead of the race’s breakout star, the Portuguese climber Alfonso Eulalio (Bahrain Victorious), who secured the white jersey as best young rider off the back of a long stint in pink before Vingegaard wrested the maglia rosa from his shoulders on Stage 14.
Italy’s Giulio Ciccone (Lidl-Trek) won the blue climbers’ jersey while the French sprinter Paul Magnier (Soudal Quick-Step) secured the maglia ciclamino following the withdrawal of his nearest rival – and fellow triple stage winner – Jhonthan Narvaez (UAE Team Emirates-XRG) in Stage 19.
Magnier was unable to add a fourth stage win in Rome, however. With his usual pilot Jasper Stuyven initially up the road covering a late attack by the Italian powerhouse Filippo Ganna (Netcompany INEOS), Magnier found himself out of position in the closing moments when the move was snuffed out with three kilometres to go. Magnier could only take eleventh place after being boxed against the barriers by Dutchman Dylan Groenewegen (Unibet Rose Rockets), who came fourth.
picture

‘Eternal class shines through in Rome!’ – Milan powers to memorable win in Giro finale

Video credit: TNT Sports

Victory in the shadow of the Colosseum in the Eternal City went to Milan, whose Lidl-Trek team-mate Matteo Sobrero was also covering the dangerous move by Ganna. Launching from the wheel of his pilot Max Walscheid, Milan surged clear to win by over a bike length ahead of compatriot Lonardi Giovanni (Polti VisitMalta) and the Frenchman Paul Penhoet (Groupama-FDJ United).
It was Milan’s first win of the race and made up for the disappointment in the 25-year-old failing to win the points classification for the first time in his four Grand Tour appearances. A victory for Lidl-Trek meant they became only the ninth – of 23 teams – to taste success in a Giro where Visma won six stages, UAE four stages, and both XRG Astana and Soudal Quick-Step three apiece.
While Vingegaard’s victory was not as emphatic as his rival Tadej Pogacar’s Giro win from 2024, the 29-year-old now has the chance to emulate the Slovenian’s Giro-Tour double from two years ago. Vingegaard also strikes the psychological blow of joining the exclusive club of riders having completed the so-called grand slam ahead of Pogacar, who is yet to ride the Vuelta again since finishing third in his only appearance back in 2019.
picture

Watch breathtaking aerial view of peloton approaching Colosseum in Giro finale

Video credit: TNT Sports

Having won three of cycling’s Monuments already this season, Pogacar will start the Tour de France on 4th July as overwhelming favourite – but Vingegaard’s triumph in the Giro will give the Dane hope that he can return to the top step of the podium in Paris for the first time since 2023.
Vingegaard’s Visma-Lease a Bike team owner Richard Plugge certainly believes he has a great chance to win the fabled yellow jersey again for a third time.
Speaking after Vingegaard’s coronation in Rome, Dutchman Plugge said: ”We are a yellow jersey organisation. We have a lot of confidence in this team and in Jonas, obviously, because Jonas is getting even stronger after this. We planned it so that he will at his peak in the Tour de France so we’re looking forward to that fight.”
Bring it on...
18:39
Quote
18:39
Quote
RICHARD PLUGGE: ‘JONAS WILL BE EVEN BETTER AT THE TOUR’
Looking dapper but slightly embarrassed in a pink blazer – ”I wouldn’t wear this normally” – the owner of Visma-Lease a Bike has issued a warning to Jonas Vingegaard’s rivals: the Dane will be even better at the Tour de France.
You want to experience this [winning the Giro] again and then the yellow jersey is the highest – and we’re a yellow jersey organisation. We have a lot of confidence in this team and in Jonas, obviously, because Jonas is getting even stronger after this. We planned it so that he will at his peak in the Tour de France so we’re looking forward to that fight.”
picture

Plugge warns Vingegaard will be 'even stronger' at Tour de France after Giro triumph

Video credit: TNT Sports


18:28
Statistics
18:28
Statistics
FINAL GENERAL CLASSIFICATION OF THE 2026 GIRO D’ITALIA
No change in the top 10 today, so here’s how it looks after the Rome finale:
1. Jonas Vingegaard (TVL) 83:22:51
2. Felix Gall (DCT) +5:22
3. Jai Hindley (RBH) +6:25
4. Thymen Arensman (NCI) +7:02
5. Derek Gee-West (LTK) +7:56
6. Afonso Eulalio (TBV) +9:39
7. Michael Storer (TUD) +10:13
8. Davide Piganzoli (TVL) +10:52
9. Damiano Caruso (TBV) +11:24
10. Egan Bernal (NCI) +12:54
18:19
Quote
18:19
Quote
MILAN'S SHARES HIS RELIEF AT FINALLY WINNING IN ROME
Usually a stage winner early on in a Grand Tour – and, before today, always wearing the points classification jersey on the final day of a Grand Tour – Jonathan Milan left it late in this Giro, breaking his duck on Stage 21 in Rome.
I’m super happy to end this Giro in this way. I’m really proud for what we achieved in this Giro. At the end of the day, we could say that we could do better in some stages, but we always give our best, we were always on the front, fighting and trying to achieve the biggest goal.”
Milan also alluded to Giulio Ciccone’s blue jersey win while saying it was 50-50 having Matteo Sobrero covering the attack from Filippo Ganna in that late move.
”With Cicco, we did amazing results and I’m super happy to make it today after the last two years of being here but not winning in Rome. Sobrero had to cover the breaks and it was perfect to have him there with Ganna because we didn’t have to chase behind. It was perfect and I’m really happy that I could pay them back with a victory.”

18:10
18:10
THE MOMENT JONAS VINGEGAARD MADE HISTORY
The Dane crosses the line with six of his Visma-Lease a Bike team-mates to join the exclusive club of riders who have won all three  of cycling’s Grand Tours.

18:07
Podium
18:07
Podium
STAGE 21 RESULT – TOP 10 IN ROME
In the end, Milan won that sprint by a length and didn’t have to worry about any of his big rivals, with Paul Magnier finishing outside the top 10 in eleventh…
1. Jonathan Milan (Lidl-Trek)
2. Giovanni Lonardi (Polti VisitMalta)
3. Paul Penhoet (Groupama-FDJ)
4. Dylan Groenewegen (Unibet Rose Rockets)
5. Madis Mihkels (EF Education-EasyPost)
6. Jensen Plowright (Alpecin-Premier Tech)
7. Tobias Lund (Decathlon CMA CGM)
8. Corbin Strong (NSN Cycling Team)
9. Toon Aerts (Lotto Intermarche)
10. Luca Mozzato (Tudor Pro Cycling)
18:02
Jersey - Pink (Giro)
18:02
Jersey - Pink (Giro)
VICTORY FOR VINGEGAARD AS DANE MAKES HISTORY
And shortly after Milan and the sprinters powered over the line, Jonas Vingegaard comes home with six of his Visma-Lease a Bike team-mates all in a line to complete his Grand Tour clean sweep.
Vingegaard wins the Giro and becomes the eighth rider in history – and the first of his generation – to win all three of cycling’s major Tours.

18:02
Winner
18:02
Winner
JONATHAN MILAN WINS STAGE 21 OF THE GIRO
And finally the towering Italian comes good as he powers to an emphatic victory in the Italian capital – that was superb from the Lidl-Trek sprinter, who breaks his duck at the last chance.

17:59
Last 01 km
17:59
Last 01 km
FINAL KILOMETRE
It’s all Soudal Quick-Step with three riders on the front, including the maglia ciclamino. Groenewegen is isolated and will have to do it on his own…
17:58
17:58
2KM TO GO: HERE COMES THE USUAL SUSPECTS
Lidl-Trek, Unibet, Soudal and Decathlon are all on the front now for Milan, Groenewegen, Magnier and Lund. Game on.
17:57
Highlight
17:57
Highlight
3KM TO GO: TRIO REELED IN
And that’s that for the leader, with Ganna’s brave effort finally thwarted. Sobrero and Stuyven will now drop back into the sprint trains of Lidl and Soudal respectively.
And there’s a counter-attack from Mirco Maestri of Polti VisitMalta, who steals a small march over the pack.
17:55
17:55
4KM TO GO: GANNA IS HUMAN AFTER ALL
The trio’s lead is down to single figures now as the sprint trains get their acts together. Magnier is missing the presence of Jasper Stuyven, mind, which would count against him.
17:54
Last 05 km
17:54
Last 05 km
5KM TO GO: NO COHESION BEHIND
It was Unibet Rose Rockets doing all the work but they don’t want to burn all their matches so they take their foot off the gas and now it’s just a melange of riders from Lidl, Groupama, NSN, Tudor and Astana sniffing around the front. But the gap is just 12 seconds now.
17:52
Information
17:52
Information
8KM TO GO: STILL TOUCH AND GO
Stuyven must be the favourite now because he hasn’t had to contribute to the pacing at all, and he’s the fastest sprinter of this trio. For a moment, it’s Warren Barguil of Picnic PostNL Raisin who goes clear in pursuit, which shows just how much indecision there is behind. The gap is still around 16 seconds.
17:49
Last 10 km
17:49
Last 10 km
10KM TO GO: 20 SECONDS FOR TRIO
The gap still hasn’t jumped over the maximum 20 seconds that Robbie McEwen predicted – but Ganna is giving it his best shot. He approached the finish line for the penultimate time, the bell rings, and behind it’s Tudor and Unibet who have taken up the chase.
17:47
Information
17:47
Information
12KM TO GO: GANNA GOING DEEP
It’s 18 seconds now for this trio, with Sobrero seemingly on the radio and asking whether he has permission to start riding, or whether the plan is still for Milan.
Behind, the Unibet Rose Rockets of Dylan Groenewegen are marshalling themselves on the front. Can they finally deliver their man to a maiden Grand Tour stage win on their Giro debut? Groenewegen has done it before, but this is unchartered territory for the Dutch wildcard team.
17:44
Information
17:44
Information
15KM TO GO: GANNA DOING ALL THE WORK
Sobrero and Stuyven are sandbagging the Italian from Netcompany INEOS, working for their sprinters Milan and Magnier. Ganna has single-handedly stretched the lead to 15 seconds despite two men sitting in his wheel.
17:42
Highlight
17:42
Highlight
17KM TO GO: IT’S GANNA TIME
Filippo Ganna puts in a monster acceleration and takes advantage of a moment of indecision in that lead group. He goes clear with Matteo Sobrero (Lidl-Trek) and Jasper Stuyven (Soudal Quick-Step).
17:40
17:40
18KM TO GO: SPLINTER GROUP FORMS
And we have many of the big name sprinters in this group of around 25 riders – including Groenewegen, Milan and Turner. But Filippo Ganna is also here and he looks primed…
17:39
Information
17:39
Information
19KM TO GO: SOUDAL DRAG PELOTON BACK
Paul Magnier’s team-mates combine on the home straight to bring the four leaders to within just five seconds. Two laps to go now!