| 1 | Thomas PidcockPinarello-Q36.5 Pro Cycling Team | 3:43:52 |
| 2 | Jan ChristenUAE Team Emirates XRG | +0:10 |
| 3 | Romain GregoireGroupama-FDJ United | +0:12 |
| 4 | Alex Aranburu DevaCofidis | +0:12 |
| 5 | Aleksandr VlasovRed Bull - Bora - Hansgrohe | +0:12 |
| 6 | Ivan Romeo AbadMovistar Team | +0:12 |
| 7 | Andreas LeknessundUNO-X Mobility | +0:12 |
| 8 | Clément Braz AfonsoGroupama-FDJ United | +0:14 |
| 9 | Tim WellensUAE Team Emirates XRG | +0:21 |
| 10 | Axel ZingleTeam Visma | Lease a Bike | +0:31 |
| 11 | Bastien TronchonGroupama-FDJ United | +0:32 |
| 12 | Matteo VercherTotalenergies | +0:32 |
| 13 | Alessandro FancelluMBH Bank CSB Telecom Fort | +0:32 |
| 14 | Jon Barrenetxea GolzarriMovistar Team | +0:32 |
| 15 | Johannes KulsetUNO-X Mobility | +0:32 |
| 16 | Gotzon Martin SanzEuskaltel-Euskadi | +0:32 |
| 17 | Adrien Yves Claude BoichisRed Bull - Bora - Hansgrohe | +0:32 |
| 18 | Jesus Herrada LopezBurgos-Burpellet-BH | +0:32 |
| 19 | Torstein TræenUNO-X Mobility | +0:32 |
| 20 | Sergio Geovani Chumil GonzalezBurgos-Burpellet-BH | +0:32 |