Classement de l’étape 3
| 1 | Fernando Gaviria Rendon (Col) UAE Team Emirates | 5:18:15 |
| 2 | Olav Kooij (Ned) Jumbo-Visma | |
| 3 | Phil Bauhaus (Ger) Bahrain Victorious | |
| 4 | Max Kanter (Ger) Team DSM | |
| 5 | Maximilian Walscheid (Ger) Qhubeka NextHash | |
| 6 | Jonas Rickaert (Bel) Alpecin-Fenix | |
| 7 | Hugo Hofstetter (Fra) Israel Start-up Nation | |
| 8 | Michael Schwarzmann (Ger) Bora-Hansgrohe | |
| 9 | Michal Kwiatkowski (Pol) Ineos Grenadiers | |
| 10 | John Degenkolb (Ger) Lotto Soudal | |
| 11 | Andrea Pasqualon (Ita) Intermarché-Wanty-Gobert Matériaux | |
| 12 | Biniam Girmay (Eri) Intermarché-Wanty-Gobert Matériaux | |
| 13 | Logan Owen (USA) EF Education-Nippo | |
| 14 | Jake Stewart (GBr) Groupama-FDJ | |
| 15 | David Dekker (Ned) Jumbo-Visma | |
| 16 | Marco Canola (Ita) Gazprom-RusVelo | |
| 17 | Attilio Viviani (Ita) Cofidis | |
| 18 | Edward Theuns (Bel) Trek-Segafredo | |
| 19 | Diego Ulissi (Ita) UAE Team Emirates | |
| 20 | Stanislaw Aniolkowski (Pol) Poland | |
| 21 | Mikkel Honoré (Den) Deceuninck-QuickStep | |
| 22 | Ivan Garcia Cortina (Spa) Movistar Team | |
| 23 | Silvan Dillier (Swi) Alpecin-Fenix | |
| 24 | Stefano Oldani (Ita) Lotto Soudal | |
| 25 | Romain Seigle (Fra) Groupama-FDJ | |
| 26 | Alvaro Hodeg Chagui (Col) Deceuninck-QuickStep | |
| 27 | Jenthe Biermans (Bel) Israel Start-up Nation | |
| 28 | Maximiliano Richeze (Arg) UAE Team Emirates | |
| 29 | Davide Martinelli (Ita) Astana-Premier Tech | |
| 30 | Kobe Goossens (Bel) Lotto Soudal | |
| 31 | Ben Tulett (GBr) Alpecin-Fenix | |
| 32 | Patryk Stosz (Pol) Poland | |
| 33 | Kristian Sbaragli (Ita) Alpecin-Fenix | |
| 34 | Einer Rubio Reyes (Col) Movistar Team | |
| 35 | Clément Berthet (Fra) AG2R Citroën Team | |
| 36 | Senne Leysen (Bel) Alpecin-Fenix | |
| 37 | Fabian Lienhard (Swi) Groupama-FDJ | |
| 38 | Matej Mohoric (Slo) Bahrain Victorious | |
| 39 | Alessandro Covi (Ita) UAE Team Emirates | |
| 40 | Quinten Hermans (Bel) Intermarché-Wanty-Gobert Matériaux | |
| 41 | Julien El Fares (Fra) EF Education-Nippo | |
| 42 | Giovanni Aleotti (Ita) Bora-Hansgrohe | |
| 43 | Matteo Fabbro (Ita) Bora-Hansgrohe | |
| 44 | Anthony Jullien (Fra) AG2R Citroën Team | |
| 45 | Julius van den Berg (Ned) EF Education-Nippo | |
| 46 | João Almeida (Por) Deceuninck-QuickStep | |
| 47 | Vadim Pronskiy (Kaz) Astana-Premier Tech | |
| 48 | Jai Hindley (Aus) Team DSM | |
| 49 | Denis Nekrasov (Rus) Gazprom-RusVelo | |
| 50 | Georg Zimmermann (Ger) Intermarché-Wanty-Gobert Matériaux | |
| 51 | Gijs Van Hoecke (Bel) AG2R Citroën Team | |
| 52 | Gabriel Cullaigh (GBr) Movistar Team | |
| 53 | Amanuel Gehbreigzabhier (Eri) Trek-Segafredo | |
| 54 | Dion Smith (NZl) Team BikeExchange | |
| 55 | Davide Villella (Ita) Movistar Team | |
| 56 | Lorenzo Rota (Ita) Intermarché-Wanty-Gobert Matériaux | |
| 57 | Tanel Kangert (Est) Team BikeExchange | |
| 58 | Dylan Teuns (Bel) Bahrain Victorious | |
| 59 | Antonio Tiberi (Ita) Trek-Segafredo | |
| 60 | Andrea Vendrame (Ita) AG2R Citroën Team | |
| 61 | Fumiyuki Beppu (Jpn) EF Education-Nippo | |
| 62 | Maciej Paterski (Pol) Poland | |
| 63 | Lukasz Wisniowski (Pol) Qhubeka NextHash | |
| 64 | Ruben Fernandez (Spa) Cofidis | |
| 65 | Dario Cataldo (Ita) Movistar Team | |
| 66 | Evgeny Shalunov (Rus) Gazprom-RusVelo | |
| 67 | Michal Golas (Pol) Ineos Grenadiers | |
| 68 | Pascal Eenkhoorn (Ned) Jumbo-Visma | |
| 69 | Christoph Pfingsten (Ger) Jumbo-Visma | |
| 70 | Jonas Gregaard (Den) Astana-Premier Tech | |
| 71 | Tony Gallopin (Fra) AG2R Citroën Team | |
| 72 | Lukas Pöstlberger (Aut) Bora-Hansgrohe | |
| 73 | George Bennett (NZl) Jumbo-Visma | |
| 74 | Tsgabu Grmay (Eth) Team BikeExchange | |
| 75 | Jorge Arcas (Spa) Movistar Team | |
| 76 | Fabio Sabatini (Ita) Cofidis | |
| 77 | Pavel Kochetkov (Rus) Gazprom-RusVelo | |
| 78 | Nicolas Roche (Irl) Team DSM | |
| 79 | Xandro Meurisse (Bel) Alpecin-Fenix | |
| 80 | Romain Combaud (Fra) Team DSM | |
| 81 | Carlos Barbero (Spa) Qhubeka NextHash | |
| 82 | Matteo Sobrero (Ita) Astana-Premier Tech | |
| 83 | Artem Nych (Rus) Gazprom-RusVelo | |
| 84 | Tim Declercq (Bel) Deceuninck-QuickStep | |
| 85 | Ilnur Zakarin (Rus) Gazprom-RusVelo | |
| 86 | Xandres Vervloesem (Bel) Lotto Soudal | |
| 87 | Barnabás Peák (Hun) Team BikeExchange | |
| 88 | Alessandro De Marchi (Ita) Israel Start-up Nation | |
| 89 | Piotr Brozyna (Pol) Poland | |
| 90 | Attila Valter (Hun) Groupama-FDJ | |
| 91 | Rémi Cavagna (Fra) Deceuninck-QuickStep | 0:00:19 |
| 92 | Larry Warbasse (USA) AG2R Citroën Team | |
| 93 | Manuele Boaro (Ita) Astana-Premier Tech | |
| 94 | Yevgeniy Fedorov (Kaz) Astana-Premier Tech | |
| 95 | Natnael Berhane (Eri) Cofidis | |
| 96 | Lukasz Owsian (Pol) Poland | |
| 97 | Maciej Bodnar (Pol) Bora-Hansgrohe | |
| 98 | Filip Maciejuk (Pol) Poland | |
| 99 | Alexis Renard (Fra) Israel Start-up Nation | |
| 100 | Andrey Amador (CRc) Ineos Grenadiers | |
| 101 | Nikias Arndt (Ger) Team DSM | |
| 102 | Niklas Märkl (Ger) Team DSM | |
| 103 | Sebastian Langeveld (Ned) EF Education-Nippo | |
| 104 | Ryan Mullen (Irl) Trek-Segafredo | |
| 105 | Owain Doull (GBr) Ineos Grenadiers | |
| 106 | Antoine Duchesne (Can) Groupama-FDJ | |
| 107 | Tomasz Marczynski (Pol) Lotto Soudal | |
| 108 | Antwan Tolhoek (Ned) Jumbo-Visma | |
| 109 | Norman Vahtra (Est) Israel Start-up Nation | |
| 110 | Michal Paluta (Pol) Poland | |
| 111 | Sean Bennett (USA) Qhubeka NextHash | |
| 112 | Clément Davy (Fra) Groupama-FDJ | |
| 113 | Emils Liepins (Lat) Trek-Segafredo | 0:00:46 |
| 114 | Marcel Sieberg (Ger) Bahrain Victorious | 0:00:50 |
| 115 | Igor Boev (Rus) Gazprom-RusVelo | 0:00:54 |
| 116 | Filippo Conca (Ita) Lotto Soudal | 0:01:05 |
| 117 | Luke Rowe (GBr) Ineos Grenadiers | 0:01:24 |
| 118 | Jos van Emden (Ned) Jumbo-Visma | 0:01:35 |
| 119 | William Bonnet (Fra) Groupama-FDJ | |
| 120 | Tao Geoghegan Hart (GBr) Ineos Grenadiers | |
| 121 | Matthias Brändle (Aut) Israel Start-up Nation | |
| 122 | Oliviero Troia (Ita) UAE Team Emirates | 0:02:05 |
| 123 | Lionel Taminiaux (Bel) Alpecin-Fenix | 0:02:13 |
| 124 | Taco van der Hoorn (Ned) Intermarché-Wanty-Gobert Matériaux | |
| 125 | Simon Clarke (Aus) Qhubeka NextHash | |
| 126 | Nikita Stalnov (Kaz) Astana-Premier Tech | 0:02:18 |
| 127 | Eros Capecchi (Ita) Bahrain Victorious | 0:02:40 |
| 128 | Ian Garrison (USA) Deceuninck-QuickStep | |
| 129 | Charlie Quarterman (GBr) Trek-Segafredo | |
| 130 | Tim Wellens (Bel) Lotto Soudal | |
| 131 | Florian Stork (Ger) Team DSM | 0:02:40 |
| 132 | Kevin Inkelaar (Ned) Bahrain Victorious | |
| 133 | Pieter Vanspeybrouck (Bel) Intermarché-Wanty-Gobert Matériaux | |
| 134 | Marco Marcato (Ita) UAE Team Emirates | 0:02:48 |
| 135 | Gianni Moscon (Ita) Ineos Grenadiers | |
| 136 | Tom Bohli (Swi) Cofidis | |
| 137 | Daniel Arroyave Cañas (Col) EF Education-Nippo | |
| 138 | Rob Power (Aus) Qhubeka NextHash | |
| 139 | Michael Hepburn (Aus) Team BikeExchange | 0:03:56 |
| 140 | Alexander Konychev (Ita) Team BikeExchange | |
| 141 | Mikkel Bjerg (Den) UAE Team Emirates | 0:04:34 |
| 142 | Nans Peters (Fra) AG2R Citroën Team | 0:04:54 |
| 143 | Matteo Jorgenson (USA) Movistar Team | |
| 144 | Stijn Steels (Bel) Deceuninck-QuickStep | 0:05:15 |
| DSQ | Kaden Groves (Aus) Team BikeExchange | |
| DNS | Heinrich Haussler (Aus) Bahrain Victorious |
Classement général
| 1 | João Almeida (Por) Deceuninck-QuickStep | 15:01:02 |
| 2 | Diego Ulissi (Ita) UAE Team Emirates | 0:00:04 |
| 3 | Matej Mohoric (Slo) Bahrain Victorious | |
| 4 | Michal Kwiatkowski (Pol) Ineos Grenadiers | 0:00:11 |
| 5 | Mikkel Honoré (Den) Deceuninck-QuickStep | 0:00:18 |
| 6 | Dylan Teuns (Bel) Bahrain Victorious | 0:00:22 |
| 7 | Lorenzo Rota (Ita) Intermarché-Wanty-Gobert Matériaux | |
| 8 | Jai Hindley (Aus) Team DSM | |
| 9 | Giovanni Aleotti (Ita) Bora-Hansgrohe | |
| 10 | Einer Rubio Reyes (Col) Movistar Team | 0:00:26 |
| 11 | Tim Wellens (Bel) Lotto Soudal | |
| 12 | Alessandro Covi (Ita) UAE Team Emirates | 0:00:31 |
| 13 | Dion Smith (NZl) Team BikeExchange | 0:00:38 |
| 14 | Ben Tulett (GBr) Alpecin-Fenix | |
| 15 | Clément Berthet (Fra) AG2R Citroën Team | |
| 16 | Quinten Hermans (Bel) Intermarché-Wanty-Gobert Matériaux | 0:00:40 |
| 17 | Denis Nekrasov (Rus) Gazprom-RusVelo | |
| 18 | Tony Gallopin (Fra) AG2R Citroën Team | |
| 19 | Ruben Fernandez (Spa) Cofidis | |
| 20 | Biniam Girmay (Eri) Intermarché-Wanty-Gobert Matériaux | 0:00:45 |
| 21 | Matteo Fabbro (Ita) Bora-Hansgrohe | |
| 22 | Pascal Eenkhoorn (Ned) Jumbo-Visma | |
| 23 | Antonio Tiberi (Ita) Trek-Segafredo | |
| 24 | George Bennett (NZl) Jumbo-Visma | |
| 25 | Jonas Gregaard (Den) Astana-Premier Tech | |
| 26 | Kristian Sbaragli (Ita) Alpecin-Fenix | 0:00:51 |
| 27 | Davide Villella (Ita) Movistar Team | |
| 28 | Georg Zimmermann (Ger) Intermarché-Wanty-Gobert Matériaux | 0:00:55 |
| 29 | Tanel Kangert (Est) Team BikeExchange | |
| 30 | Nicolas Roche (Irl) Team DSM | 0:01:01 |
| 31 | Jenthe Biermans (Bel) Israel Start-up Nation | 0:01:03 |
| 32 | Vadim Pronskiy (Kaz) Astana-Premier Tech | |
| 33 | Romain Seigle (Fra) Groupama-FDJ | |
| 34 | Ilnur Zakarin (Rus) Gazprom-RusVelo | |
| 35 | Logan Owen (USA) EF Education-Nippo | 0:01:20 |
| 36 | Silvan Dillier (Swi) Alpecin-Fenix | |
| 37 | Stefano Oldani (Ita) Lotto Soudal | 0:01:28 |
| 38 | Carlos Barbero (Spa) Qhubeka NextHash | |
| 39 | Alessandro De Marchi (Ita) Israel Start-up Nation | |
| 40 | Matteo Sobrero (Ita) Astana-Premier Tech | 0:01:31 |
| 41 | Kobe Goossens (Bel) Lotto Soudal | 0:01:32 |
| 42 | Xandro Meurisse (Bel) Alpecin-Fenix | |
| 43 | Maciej Paterski (Pol) Poland | 0:01:36 |
| 44 | Tsgabu Grmay (Eth) Team BikeExchange | 0:01:45 |
| 45 | Andrea Vendrame (Ita) AG2R Citroën Team | 0:01:50 |
| 46 | Dario Cataldo (Ita) Movistar Team | 0:02:27 |
| 47 | Rémi Cavagna (Fra) Deceuninck-QuickStep | 0:02:46 |
| 48 | Filippo Conca (Ita) Lotto Soudal | 0:03:02 |
| 49 | Barnabás Peák (Hun) Team BikeExchange | 0:03:25 |
| 50 | Edward Theuns (Bel) Trek-Segafredo | 0:04:50 |
| 51 | Tim Declercq (Bel) Deceuninck-QuickStep | |
| 52 | Amanuel Gehbreigzabhier (Eri) Trek-Segafredo | 0:05:17 |
| 53 | Attila Valter (Hun) Groupama-FDJ | |
| 54 | Piotr Brozyna (Pol) Poland | |
| 55 | Lukasz Owsian (Pol) Poland | 0:05:34 |
| 56 | Antwan Tolhoek (Ned) Jumbo-Visma | 0:05:45 |
| 57 | Christoph Pfingsten (Ger) Jumbo-Visma | 0:06:10 |
| 58 | Evgeny Shalunov (Rus) Gazprom-RusVelo | 0:06:38 |
| 59 | Simon Clarke (Aus) Qhubeka NextHash | |
| 60 | Maciej Bodnar (Pol) Bora-Hansgrohe | 0:06:44 |
| 61 | Julien El Fares (Fra) EF Education-Nippo | 0:08:01 |
| 62 | Romain Combaud (Fra) Team DSM | |
| 63 | Jonas Rickaert (Bel) Alpecin-Fenix | 0:08:16 |
| 64 | Andrea Pasqualon (Ita) Intermarché-Wanty-Gobert Matériaux | |
| 65 | Senne Leysen (Bel) Alpecin-Fenix | |
| 66 | Marco Canola (Ita) Gazprom-RusVelo | 0:08:22 |
| 67 | Yevgeniy Fedorov (Kaz) Astana-Premier Tech | 0:08:29 |
| 68 | Larry Warbasse (USA) AG2R Citroën Team | 0:08:35 |
| 69 | Alexis Renard (Fra) Israel Start-up Nation | |
| 70 | Jake Stewart (GBr) Groupama-FDJ | 0:08:41 |
| 71 | Emils Liepins (Lat) Trek-Segafredo | 0:09:10 |
| 72 | Nikias Arndt (Ger) Team DSM | 0:09:19 |
| 73 | Natnael Berhane (Eri) Cofidis | |
| 74 | Sebastian Langeveld (Ned) EF Education-Nippo | 0:09:37 |
| 75 | Tomasz Marczynski (Pol) Lotto Soudal | 0:09:44 |
| 76 | Matthias Brändle (Aut) Israel Start-up Nation | 0:09:51 |
| 77 | Tao Geoghegan Hart (GBr) Ineos Grenadiers | 0:10:35 |
| 78 | Ryan Mullen (Irl) Trek-Segafredo | 0:10:41 |
| 79 | Gabriel Cullaigh (GBr) Movistar Team | 0:10:48 |
| 80 | David Dekker (Ned) Jumbo-Visma | 0:10:52 |
| 81 | Julius van den Berg (Ned) EF Education-Nippo | |
| 82 | Ivan Garcia Cortina (Spa) Movistar Team | 0:11:10 |
| 83 | Manuele Boaro (Ita) Astana-Premier Tech | 0:11:11 |
| 84 | Gijs Van Hoecke (Bel) AG2R Citroën Team | 0:11:15 |
| 85 | Taco van der Hoorn (Ned) Intermarché-Wanty-Gobert Matériaux | 0:11:17 |
| 86 | Nikita Stalnov (Kaz) Astana-Premier Tech | 0:11:18 |
| 87 | Daniel Arroyave Cañas (Col) EF Education-Nippo | 0:11:32 |
| 88 | Max Kanter (Ger) Team DSM | 0:11:33 |
| 89 | Fabian Lienhard (Swi) Groupama-FDJ | |
| 90 | Attilio Viviani (Ita) Cofidis | 0:11:36 |
| 91 | Fabio Sabatini (Ita) Cofidis | |
| 92 | Fumiyuki Beppu (Jpn) EF Education-Nippo | |
| 93 | Artem Nych (Rus) Gazprom-RusVelo | |
| 94 | Filip Maciejuk (Pol) Poland | 0:11:55 |
| 95 | Xandres Vervloesem (Bel) Lotto Soudal | |
| 96 | Kevin Inkelaar (Ned) Bahrain Victorious | 0:11:58 |
| 97 | Phil Bauhaus (Ger) Bahrain Victorious | 0:12:03 |
| 98 | Hugo Hofstetter (Fra) Israel Start-up Nation | 0:12:06 |
| 99 | Fernando Gaviria Rendon (Col) UAE Team Emirates | 0:12:07 |
| 100 | Olav Kooij (Ned) Jumbo-Visma | 0:12:09 |
| 101 | Patryk Stosz (Pol) Poland | |
| 102 | John Degenkolb (Ger) Lotto Soudal | 0:12:10 |
| 103 | Stanislaw Aniolkowski (Pol) Poland | |
| 104 | Lukasz Wisniowski (Pol) Qhubeka NextHash | |
| 105 | Jorge Arcas (Spa) Movistar Team | |
| 106 | Alvaro Hodeg Chagui (Col) Deceuninck-QuickStep | 0:12:11 |
| 107 | Andrey Amador (CRc) Ineos Grenadiers | 0:12:14 |
| 108 | Michael Schwarzmann (Ger) Bora-Hansgrohe | 0:12:17 |
| 109 | Maximilian Walscheid (Ger) Qhubeka NextHash | |
| 110 | Igor Boev (Rus) Gazprom-RusVelo | 0:12:30 |
| 111 | Davide Martinelli (Ita) Astana-Premier Tech | 0:12:54 |
| 112 | Michal Golas (Pol) Ineos Grenadiers | |
| 113 | Pavel Kochetkov (Rus) Gazprom-RusVelo | |
| 114 | Maximiliano Richeze (Arg) UAE Team Emirates | 0:13:01 |
| 115 | Nans Peters (Fra) AG2R Citroën Team | 0:13:10 |
| 116 | Niklas Märkl (Ger) Team DSM | 0:13:13 |
| 117 | Owain Doull (GBr) Ineos Grenadiers | |
| 118 | Antoine Duchesne (Can) Groupama-FDJ | 0:13:21 |
| 119 | Tom Bohli (Swi) Cofidis | 0:13:40 |
| 120 | Jos van Emden (Ned) Jumbo-Visma | 0:13:55 |
| 121 | Gianni Moscon (Ita) Ineos Grenadiers | 0:14:03 |
| 122 | Anthony Jullien (Fra) AG2R Citroën Team | 0:14:10 |
| 123 | Lionel Taminiaux (Bel) Alpecin-Fenix | 0:14:30 |
| 124 | Marco Marcato (Ita) UAE Team Emirates | 0:14:43 |
| 125 | Oliviero Troia (Ita) UAE Team Emirates | 0:15:06 |
| 126 | Luke Rowe (GBr) Ineos Grenadiers | 0:15:13 |
| 127 | Rob Power (Aus) Qhubeka NextHash | 0:15:42 |
| 128 | Norman Vahtra (Est) Israel Start-up Nation | 0:15:46 |
| 129 | Mikkel Bjerg (Den) UAE Team Emirates | 0:15:53 |
| 130 | Alexander Konychev (Ita) Team BikeExchange | 0:15:55 |
| 131 | William Bonnet (Fra) Groupama-FDJ | |
| 132 | Pieter Vanspeybrouck (Bel) Intermarché-Wanty-Gobert Matériaux | 0:15:59 |
| 133 | Clément Davy (Fra) Groupama-FDJ | 0:16:08 |
| 134 | Sean Bennett (USA) Qhubeka NextHash | 0:16:13 |
| 135 | Matteo Jorgenson (USA) Movistar Team | 0:17:04 |
| 136 | Michael Hepburn (Aus) Team BikeExchange | 0:17:15 |
| 137 | Michal Paluta (Pol) Poland | 0:17:56 |
| 138 | Ian Garrison (USA) Deceuninck-QuickStep | 0:18:29 |
| 139 | Florian Stork (Ger) Team DSM | 0:19:13 |
| 140 | Lukas Pöstlberger (Aut) Bora-Hansgrohe | 0:19:21 |
| 141 | Stijn Steels (Bel) Deceuninck-QuickStep | 0:21:04 |
| 142 | Marcel Sieberg (Ger) Bahrain Victorious | 0:24:14 |
| 143 | Eros Capecchi (Ita) Bahrain Victorious | 0:25:46 |
| 144 | Charlie Quarterman (GBr) Trek-Segafredo | 0:26:50 |
Commenter