2026 Giro d'Italia Stage 21 Results & Recap
Stage 21 of the 2026 Giro d'Italia is in the books. The final results and standings are below, followed by our recap of how the race unfolded.
Race Recap
Frustrated by the sprinting brilliance of Paul Magnier (SOQ) for the past three weeks, Jonathan Milan (LTK) finally delivered the stage win that he and his team have been striving for when he produced a barnstorming finish on the drag up to the line in Rome, his power carrying him well clear of Giovanni Lonardi (PTV) and Paul Penhoët (GFC), who were the surprise challengers to the Italian sprinter.
As Milan celebrated a victory that lifted the pressure that's weighed on him and his team for three weeks, Jonas Vingegaard (TVL) was confirmed as the eighth rider to win all three Grand Tours, adding the Giro title to those that he won at the Vuelta a España last year and at the Tour de France in 2022 and 2023.
The final stage began in celebratory fashion as the four jersey winners Vingegaard (GC), Magnier (points), Giulio Ciccone (mountains) and Afonso Eulálio (best young rider) rode ahead of the peloton, before each of them was joined in turn by their teammates.
Apart from a brief flurry of action at the intermediate sprint where Bardiani managed to ensure that Manuele Tarozzi (BCS) secured that minor classification, the peloton stayed together until it was on the 9.5km finishing circuit in Rome, which would be covered 8 times.
Once attacks did come, Larry Warbasse (TUD) leading one sortie and Ben Turner (IGD) another, the sprint teams were quick to close them down.
Soon after Igor Arrieta (UAD) had guaranteed victory in the Red Bull KM sprint competition, Rémy Rochas (GFC) went clear on the drag up to the finish with 5 laps to go. He was joined by Tobias Bayer (APT) and the pair opened up a lead of 23" before the bunch closed in. As the bridge was made, Rémi Cavagna (GFC) jumped across to Rochas and the pair were joined by Matteo Sobrero (LTK) and Victor Campenaerts (TVL).
That quartet gained 20 seconds, but were closed down at the start of the of the penultimate lap. As they were caught, Filippo Ganna (IGD) swept clear, chased by Sobrero and Jasper Stuyven (SOQ), who were both marking the Italian for their respective sprinters.
Ganna didn't ask for and didn't expect any help from his two companions as he opened a gap of 20 seconds. He remained clear until 3km from home, when the sprint teams led the peloton by.
Soudal Quick-Step led into the final kilometer, but didn't have the numbers to support Magnier. As the Frenchman faltered, Dylan Groenewegen (URR) led out the dash to the line, but couldn't respond when Milan flashed past in his unmistakeable stomping style, an elusive victory claimed at the very last.
Get our full coverage of the Giro d'Italia and every race we cover with our mobile app! The apps have over 100 additional exclusive features, including our award-winning Time Machine feature that lets you pause/rewind/replay the entire app to sync with delayed race video, integrated Fantasy Cycling, push notifications, an integrated news feed, live GPS tracking, world-class commentary, and our animated interactive maps and profiles.