| 1 | Thomas PidcockPinarello-Q36.5 Pro Cycling Team | 4:33:08 |
| 2 | Christian ScaroniXDS Astana Team | +0:12 |
| 3 | Anthon CharmigUNO-X Mobility | +0:12 |
| 4 | Roger Adria OliverasMovistar Team | +0:12 |
| 5 | Alessandro FancelluMBH Bank CSB Telecom Fort | +0:12 |
| 6 | Antonio TiberiBahrain Victorious | +0:12 |
| 7 | Thomas GachignardTotalenergies | +0:12 |
| 8 | Mathys RondelTudor Pro Cycling Team | +0:18 |
| 9 | Ben Alexander O'ConnorTeam Jayco AlUla | +0:28 |
| 10 | Romain GregoireGroupama-FDJ United | +0:40 |
| 11 | Jordan JegatTotalenergies | +0:40 |
| 12 | Natnael TesfatsionMovistar Team | +0:42 |
| 13 | Michael StorerTudor Pro Cycling Team | +0:42 |
| 14 | Quinten HermansPinarello-Q36.5 Pro Cycling Team | +1:05 |
| 15 | Brieuc RollandGroupama-FDJ United | +1:10 |
| 16 | Markus HoelgaardUNO-X Mobility | +1:10 |
| 17 | Mathieu BurgaudeauTotalenergies | +1:16 |
| 18 | Lukas NerurkarEF Education - EasyPost | +1:16 |
| 19 | Iker Mintegi ClaverEuskaltel-Euskadi | +1:16 |
| 20 | Andrii PonomarGeneral Store - Essegibi - F.lli Curia | +1:16 |