| # | Rider | Team | Time | Gap |
|---|---|---|---|---|
| 1 | David Gaudu | Groupama-FDJ | 04:06:03 | |
| 2 | Quinn Simmons | Lidl-Trek | + 03 | + 03 |
| 3 | Jordan Jegat | TotalEnergies | + 03 | + 03 |
| 4 | Antonio Tiberi | Bahrain Victorious | + 03 | + 03 |
| 5 | Mads Pedersen | Lidl-Trek | + 29 | + 29 |
| 6 | Mathieu van der Poel | Alpecin-Deceuninck | + 29 | + 29 |
| 7 | Juan Ayuso | UAE Team Emirates | + 31 | + 31 |
| 8 | Bastien Tronchon | Decathlon AG2R La Mondiale Team | + 31 | + 31 |
| 9 | Mauri Vansevenant | Soudal Quick-Step | + 31 | + 31 |
| 10 | Marc Hirschi | UAE Team Emirates | + 31 | + 31 |
| 11 | Wilco Kelderman | Team Visma | Lease a Bike | + 31 | + 31 |
| 12 | Arno Wallenborn | Luxembourg | + 31 | + 31 |
| 13 | Nicolas Prodhomme | Decathlon AG2R La Mondiale Team | + 31 | + 31 |
| 14 | Mirco Maestri | Team Polti Kometa | + 31 | + 31 |
| 15 | Idar Andersen | Uno-X Mobility | + 31 | + 31 |
| 16 | Harry Sweeny | EF Education-EasyPost | + 31 | + 31 |
| 17 | Mats Wenzel | Luxembourg | + 31 | + 31 |
| 18 | Michael Storer | Tudor Pro Cycling Team | + 31 | + 31 |
| 19 | Christian Eiking Odd | Uno-X Mobility | + 31 | + 31 |
| 20 | Alexis Vuillermoz | TotalEnergies | + 31 | + 31 |
| 21 | Magnus Cort | Uno-X Mobility | + 31 | + 31 |
| 22 | Davide Piganzoli | Team Polti Kometa | + 31 | + 31 |
| 23 | William Barta | Movistar Team | + 37 | + 37 |
| 24 | Pelayo Sanchez | Movistar Team | + 37 | + 37 |
| 25 | Jon Barrenetxea | Movistar Team | + 41 | + 41 |
| 26 | Andrea Vendrame | Decathlon AG2R La Mondiale Team | + 41 | + 41 |
| 27 | Hartthijs de Vries | TdT-Unibet | + 42 | + 42 |
| 28 | Valentin Madouas | Groupama-FDJ | + 42 | + 42 |
| 29 | Fredrik Hagen Carl | Q36.5 Pro Cycling Team | + 42 | + 42 |
| 30 | Johannes Adamietz | Lotto Dstny | + 42 | + 42 |
| 31 | Jordy Bouts | TdT-Unibet | + 58 | + 58 |
| 32 | Johannes Staune-mittet | Team Visma | Lease a Bike | + 58 | + 58 |
| 33 | Mattia Bais | Team Polti Kometa | + 58 | + 58 |
| 34 | Tijmen Graat | Team Visma | Lease a Bike | + 58 | + 58 |
| 35 | Fred Wright | Bahrain Victorious | + 01:04 | + 01:04 |
| 36 | Andreas Stokbro Nielsen | TdT-Unibet | + 01:07 | + 01:07 |
| 37 | Vincent van Hemelen | Team Flanders-Baloise | + 01:07 | + 01:07 |
| 38 | Damiano Caruso | Bahrain Victorious | + 01:07 | + 01:07 |
| 39 | Kevin Geniets | Groupama-FDJ | + 01:09 | + 01:09 |
| 40 | Jonas Gregaard | Lotto Dstny | + 01:09 | + 01:09 |
| 41 | Alex Kirsch | Lidl-Trek | + 01:13 | + 01:13 |
| 42 | Esteban Chaves | EF Education-EasyPost | + 01:20 | + 01:20 |
| 43 | Alan Jousseaume | TotalEnergies | + 01:20 | + 01:20 |
| 44 | Rui Costa | EF Education-EasyPost | + 02:11 | + 02:11 |
| 45 | Felix Großschartner | UAE Team Emirates | + 02:30 | + 02:30 |
| 46 | Archie Ryan | EF Education-EasyPost | + 02:34 | + 02:34 |
| 47 | Mathijs Paasschens | Lotto Dstny | + 03:11 | + 03:11 |
| 48 | Alexandre Kess | Luxembourg | + 03:52 | + 03:52 |
| 49 | Jente Michels | Alpecin-Deceuninck | + 04:32 | + 04:32 |
| 50 | Jonas Rutsch | EF Education-EasyPost | + 04:32 | + 04:32 |
| 51 | Johannes Kulset | Uno-X Mobility | + 05:03 | + 05:03 |
| 52 | Louis Vervaeke | Soudal Quick-Step | + 05:17 | + 05:17 |
| 53 | Tosh van der Sande | Team Visma | Lease a Bike | + 05:17 | + 05:17 |
| 54 | Harm Vanhoucke | Lotto Dstny | + 05:17 | + 05:17 |
| 55 | Lorenzo Milesi | Movistar Team | + 05:17 | + 05:17 |
| 56 | Henrik Pedersen | Uno-X Mobility | + 05:34 | + 05:34 |
| 57 | Noe Ury | Luxembourg | + 05:34 | + 05:34 |
| 58 | Javier Serrano | Team Polti Kometa | + 05:34 | + 05:34 |
| 59 | Tobias Ludvigsson | Q36.5 Pro Cycling Team | + 05:34 | + 05:34 |
| 60 | Mathieu Kockelmann | Luxembourg | + 05:34 | + 05:34 |
| 61 | Elias Maris | Team Flanders-Baloise | + 05:34 | + 05:34 |
| 62 | Nils Politt | UAE Team Emirates | + 05:34 | + 05:34 |
| 63 | Davide Bais | Team Polti Kometa | + 05:34 | + 05:34 |
| 64 | Toon Clynhens | Team Flanders-Baloise | + 05:34 | + 05:34 |
| 65 | Jaakko Hänninen | Decathlon AG2R La Mondiale Team | + 05:34 | + 05:34 |
| 66 | Victor Vercouillie | Team Flanders-Baloise | + 05:34 | + 05:34 |
| 67 | Bob Jungels | Luxembourg | + 05:34 | + 05:34 |
| 68 | Xabier Azparren | Q36.5 Pro Cycling Team | + 05:34 | + 05:34 |
| 69 | Fausto Masnada | Soudal Quick-Step | + 05:34 | + 05:34 |
| 70 | Amanuel Ghebreigzabhier | Lidl-Trek | + 05:34 | + 05:34 |
| 71 | Silvan Dillier | Alpecin-Deceuninck | + 05:34 | + 05:34 |
| 72 | Damien Howson | Q36.5 Pro Cycling Team | + 05:34 | + 05:34 |
| 73 | Rudy Molard | Groupama-FDJ | + 05:34 | + 05:34 |
| 74 | Mark Donovan | Q36.5 Pro Cycling Team | + 05:34 | + 05:34 |
| 75 | Laurence Pithie | Groupama-FDJ | + 05:34 | + 05:34 |
| 76 | Finn Fisher-black | UAE Team Emirates | + 05:34 | + 05:34 |
| 77 | Kamiel Bonneu | Team Flanders-Baloise | + 06:53 | + 06:53 |
| 78 | Robin Froidevaux | Tudor Pro Cycling Team | + 06:53 | + 06:53 |
| 79 | Roman Holzer | Tudor Pro Cycling Team | + 07:04 | + 07:04 |
| 80 | Pepijn Reinderink | Soudal Quick-Step | + 07:34 | + 07:34 |
| 81 | Robert Stannard | Bahrain Victorious | + 11:59 | + 11:59 |
| 82 | Oscar Chamberlain | Decathlon AG2R La Mondiale Team | + 11:59 | + 11:59 |
| 83 | Ivo Oliveira | UAE Team Emirates | + 11:59 | + 11:59 |
| 84 | Gianni Moscon | Soudal Quick-Step | + 14:26 | + 14:26 |
| 85 | Lukasz Wisniowski | Bahrain Victorious | + 14:26 | + 14:26 |
| 86 | Vlad van Mechelen | Bahrain Victorious | + 14:26 | + 14:26 |
| 87 | Jack Rootkin-gray | EF Education-EasyPost | + 16:12 | + 16:12 |
| 88 | Szymon Sajnok | Q36.5 Pro Cycling Team | + 18:09 | + 18:09 |