| # | Rider | Team | Time | Gap |
|---|---|---|---|---|
| 1 | Corbin Strong | Israel-Premier Tech | 19:33:03 | |
| 2 | Mathias Vacek | Lidl-Trek | + 09 | + 09 |
| 3 | Oliver Knight | Cofidis | + 22 | + 22 |
| 4 | Carlos Canal | Movistar Team | + 22 | + 22 |
| 5 | Anders Foldager | Team Jayco-AlUla | + 24 | + 24 |
| 6 | Natnael Tesfazion | Movistar Team | + 26 | + 26 |
| 7 | Vlad van Mechelen | Bahrain Victorious | + 27 | + 27 |
| 8 | Kim Heiduk | INEOS Grenadiers | + 28 | + 28 |
| 9 | Toon Aerts | Lotto | + 29 | + 29 |
| 10 | Filippo Fiorelli | VF Group-Bardiani CSF-Faizanè | + 31 | + 31 |
| 11 | Brandon Rivera | INEOS Grenadiers | + 32 | + 32 |
| 12 | Tibor Del Grosso | Alpecin-Deceuninck | + 33 | + 33 |
| 13 | Liam Slock | Lotto | + 33 | + 33 |
| 14 | Roger Adrià | Red Bull-BORA-hansgrohe | + 33 | + 33 |
| 15 | Luca van Boven | Intermarché-Wanty | + 33 | + 33 |
| 16 | Fredrik Dversnes | Uno-X Mobility | + 33 | + 33 |
| 17 | Kevin Geniets | Groupama-FDJ | + 33 | + 33 |
| 18 | Alexander Hajek | Red Bull-BORA-hansgrohe | + 33 | + 33 |
| 19 | Lorenzo Germani | Groupama-FDJ | + 33 | + 33 |
| 20 | Lorenzo Rota | Intermarché-Wanty | + 33 | + 33 |
| 21 | Sylvain Moniquet | Cofidis | + 33 | + 33 |
| 22 | Fabien Doubey | Team TotalEnergies | + 33 | + 33 |
| 23 | Marco Tizza | Wagner Bazin WB | + 41 | + 41 |
| 24 | Elias Maris | Team Flanders-Baloise | + 01:08 | + 01:08 |
| 25 | Aimé de Gendt | Cofidis | + 01:09 | + 01:09 |
| 26 | Louis Rouland | ARKEA-B&B HOTELS | + 01:21 | + 01:21 |
| 27 | Olivier Godfroid | Baloise Glowi Lions | + 01:26 | + 01:26 |
| 28 | Timo Kielich | Alpecin-Deceuninck | + 01:36 | + 01:36 |
| 29 | Sandy Dujardin | Team TotalEnergies | + 01:42 | + 01:42 |
| 30 | Lennert Teugels | Tarteletto-Isorex | + 01:42 | + 01:42 |
| 31 | Koller Løland Sakarias | Uno-X Mobility | + 01:42 | + 01:42 |
| 32 | Lars Craps | Lotto | + 01:58 | + 01:58 |
| 33 | Lorenzo Conforti | VF Group-Bardiani CSF-Faizanè | + 02:14 | + 02:14 |
| 34 | Lorenzo Milesi | Movistar Team | + 02:44 | + 02:44 |
| 35 | Dries de Pooter | Intermarché-Wanty | + 02:50 | + 02:50 |
| 36 | Manlio Moro | Movistar Team | + 03:07 | + 03:07 |
| 37 | Brady Gilmore | Israel-Premier Tech | + 03:22 | + 03:22 |
| 38 | Roman Ermakov | Bahrain Victorious | + 03:58 | + 03:58 |
| 39 | Davide de Pretto | Team Jayco-AlUla | + 04:18 | + 04:18 |
| 40 | Luca Mozzato | ARKEA-B&B HOTELS | + 06:12 | + 06:12 |
| 41 | Alex Kirsch | Lidl-Trek | + 06:19 | + 06:19 |
| 42 | Fabio van den Bossche | Alpecin-Deceuninck | + 06:46 | + 06:46 |
| 43 | Alessandro Borgo | Bahrain Victorious | + 07:43 | + 07:43 |
| 44 | Gianni Marchand | Tarteletto-Isorex | + 07:45 | + 07:45 |
| 45 | David Haverdings | Baloise Glowi Lions | + 07:47 | + 07:47 |
| 46 | Siebe Deweirdt | Team Flanders-Baloise | + 08:00 | + 08:00 |
| 47 | Filip Maciejuk | Red Bull-BORA-hansgrohe | + 08:25 | + 08:25 |
| 48 | Viktor Vandenberghe | Pauwels Sauzen - Cibel Clementines | + 08:33 | + 08:33 |
| 49 | Nicolò Buratti | Bahrain Victorious | + 08:35 | + 08:35 |
| 50 | Rasmus Tiller | Uno-X Mobility | + 08:46 | + 08:46 |
| 51 | Filippo Magli | VF Group-Bardiani CSF-Faizanè | + 08:52 | + 08:52 |
| 52 | Milan Lanhove | Team Flanders-Baloise | + 08:56 | + 08:56 |
| 53 | Davide Donati | Red Bull-BORA-hansgrohe | + 09:07 | + 09:07 |
| 54 | Henrik Pedersen | Uno-X Mobility | + 09:38 | + 09:38 |
| 55 | Jakob Söderqvist | Lidl-Trek | + 09:51 | + 09:51 |
| 56 | Yorben Lauryssen | Pauwels Sauzen - Cibel Clementines | + 10:29 | + 10:29 |
| 57 | Rémy Rochas | Groupama-FDJ | + 10:35 | + 10:35 |
| 58 | Robert Donaldson | Team Jayco-AlUla | + 10:58 | + 10:58 |
| 59 | Urianstad Bugge Martin | Uno-X Mobility | + 11:00 | + 11:00 |
| 60 | Ben Swift | INEOS Grenadiers | + 11:27 | + 11:27 |
| 61 | Robin Orins | Lotto | + 11:28 | + 11:28 |
| 62 | Lennert Belmans | Alpecin-Deceuninck | + 11:57 | + 11:57 |
| 63 | Artem Shmidt | INEOS Grenadiers | + 13:29 | + 13:29 |
| 64 | Jenthe Biermans | ARKEA-B&B HOTELS | + 14:33 | + 14:33 |
| 65 | Tom van Asbroeck | Israel-Premier Tech | + 15:31 | + 15:31 |
| 66 | Oliver Stockwell | Bahrain Victorious | + 17:02 | + 17:02 |
| 67 | Samuel Leroux | Team TotalEnergies | + 18:36 | + 18:36 |
| 68 | Lorrenzo Manzin | Team TotalEnergies | + 18:47 | + 18:47 |
| 69 | Nate Pringle | Red Bull-BORA-hansgrohe | + 18:49 | + 18:49 |
| 70 | Olivier Le Gac | Groupama-FDJ | + 18:57 | + 18:57 |
| 71 | Nicolas Milesi | ARKEA-B&B HOTELS | + 19:00 | + 19:00 |
| 72 | Simone Petilli | Intermarché-Wanty | + 19:06 | + 19:06 |
| 73 | Henri-francois Haquin | Wagner Bazin WB | + 19:22 | + 19:22 |
| 74 | Alessio Martinelli | VF Group-Bardiani CSF-Faizanè | + 19:53 | + 19:53 |
| 75 | Sunekær Norsgaard Mathias | Movistar Team | + 20:06 | + 20:06 |
| 76 | Baptiste Veistroffer | Lotto | + 20:47 | + 20:47 |
| 77 | Lewis Bower | Groupama-FDJ | + 21:43 | + 21:43 |
| 78 | Ryan Gibbons | Lidl-Trek | + 21:43 | + 21:43 |
| 79 | Simon Guglielmi | ARKEA-B&B HOTELS | + 22:06 | + 22:06 |
| 80 | Léandre Lozouet | ARKEA-B&B HOTELS | + 22:52 | + 22:52 |
| 81 | Tom Donnenwirth | Groupama-FDJ | + 23:39 | + 23:39 |
| 82 | Davide Cimolai | Movistar Team | + 24:30 | + 24:30 |
| 83 | Kay de Bruyckere | Pauwels Sauzen - Cibel Clementines | + 24:44 | + 24:44 |
| 84 | Clement Izquierdo | Cofidis | + 25:06 | + 25:06 |
| 85 | Enrico Zanoncello | VF Group-Bardiani CSF-Faizanè | + 26:49 | + 26:49 |
| 86 | Dion Smith | Intermarché-Wanty | + 27:29 | + 27:29 |
| 87 | Tom Paquot | Intermarché-Wanty | + 28:03 | + 28:03 |
| 88 | Kenneth van Rooy | Wagner Bazin WB | + 28:58 | + 28:58 |
| 89 | Tim Declercq | Lidl-Trek | + 29:02 | + 29:02 |
| 90 | Emil Herzog | Red Bull-BORA-hansgrohe | + 29:04 | + 29:04 |
| 91 | Victor Vercouillie | Team Flanders-Baloise | + 30:03 | + 30:03 |
| 92 | Nick Schultz | Israel-Premier Tech | + 30:30 | + 30:30 |
| 93 | Jordy Decottignies | Tarteletto-Isorex | + 31:23 | + 31:23 |
| 94 | Salvatore Puccio | INEOS Grenadiers | + 31:32 | + 31:32 |
| 95 | Arne Marit | Intermarché-Wanty | + 31:45 | + 31:45 |
| 96 | Floris de Tier | Wagner Bazin WB | + 31:45 | + 31:45 |
| 97 | Wies Nuyens | Pauwels Sauzen - Cibel Clementines | + 33:09 | + 33:09 |
| 98 | Matevz Govekar | Bahrain Victorious | + 33:28 | + 33:28 |
| 99 | Lucas Boniface | Team TotalEnergies | + 33:41 | + 33:41 |
| 100 | Cériel Desal | Wagner Bazin WB | + 34:07 | + 34:07 |
| 101 | Robbe Claeys | Tarteletto-Isorex | + 34:07 | + 34:07 |
| 102 | Lindsay de Vylder | Team Flanders-Baloise | + 34:45 | + 34:45 |
| 103 | Timothy Dupont | Tarteletto-Isorex | + 34:55 | + 34:55 |
| 104 | Jimmy Janssens | Alpecin-Deceuninck | + 35:20 | + 35:20 |
| 105 | Ewout de Keyser | Tarteletto-Isorex | + 36:51 | + 36:51 |
| 106 | Michiel Hillen | Baloise Glowi Lions | + 37:06 | + 37:06 |
| 107 | Kenay de Moyer | Pauwels Sauzen - Cibel Clementines | + 39:25 | + 39:25 |
| 108 | Daan Marien | Baloise Glowi Lions | + 39:52 | + 39:52 |
| 109 | Floris van Tricht | Israel-Premier Tech | + 40:00 | + 40:00 |
| 110 | Federico Biagini | VF Group-Bardiani CSF-Faizanè | + 40:24 | + 40:24 |
| 111 | Davide Persico | Wagner Bazin WB | + 43:18 | + 43:18 |
| 112 | Joran Wyseure | Alpecin-Deceuninck | + 44:33 | + 44:33 |
| 113 | Ludovic Robeet | Cofidis | + 47:09 | + 47:09 |