Bodnar, który startował jako jeden z pierwszych kolarzy, od początku swojego przejazdu był najszybszy w stawce – Polak ustanowił najlepszy czas na punkcie pomiarowym po 10. kilometrach, a potem 15. kilometrach po długim i ciężkim podjeździe. Na mecie, po przejechaniu 22 kilometrów, był aż o ponad minutę szybszy od Taylora Phinney (Cannondale-Drapac) i po swoim przejeździe bardzo wysoko ustawił poprzeczkę swoim rywalom. Startujący za nim Mistrz Świata, Tony Martin (Katiusza-Alpecin), był wolniejszy o 14 sekund.
Kwiatkowski, z kolei, poprawiał międzyczasy Bodnara. Mistrz Polski z ekipy Sky był szybszy o 6 sekund po 10 kilometrach i utrzymywał sekundę przewagi po podjeździe i wydawało się, że może zmienić Bodnara na prowadzeniu. Jadący w biało-czerwonym trykocie Kwiatkowski nieznacznie osłabł w samej końcówce i na mecie zameldował się zaledwie 1.15 za Bodnarem, plasując się na drugim miejscu.
Wynikom dwójki Polaków mogli jeszcze zagrozić faworyci – najpierw dość mocno pojechał Alberto Contador (Trek-Segafredo), który na drugim punkcie pomiarowym tracił mniej niż sekundę do Kwiatkowskiego, a potem lider wyścigu, Chris Froome (Team Sky), który był wolniejszy o kilka sekund. Ostatecznie Contador osłabł i stracił do Bodnara 21 sekund, a Froome na mecie był wolniejszy od Polaka o 6 sekund.
Brytyjczyk był jednak znacznie szybszy od swoich najgroźniejszych rywali i pewnie utrzymał prowadzenie w klasyfikacji generalnej – nad Rigoberto Uranem (Cannondale-Drapac) miał 25 sekund przewagi, a nad Romainem Bardet (Ag2R La Mondiale), aż 2.03. Francuz zaledwie o sekundę obronił się przed spadkiem z podium i atakiem Mikela Landy (Team Sky).
Dla Bodnara to zwycięstwo przychodzi jako wielka nagroda za wysiłek, który włożył w ucieczkę na 11. etapie wyścigu, kiedy to po całodniowej ucieczce został doścignięty na 200 metrów przed metą. Dla byłego Mistrza Polski w jeździe na czas jest to pierwsze zwycięstwo w Tour de France w karierze i największy jak do tej pory sukces. Jest to też piąte w historii zwycięstwo Polaka w Wielkiej Pętli.
Polskiego dnia w Marsylii dopełnił Kwiatkowski, który przez cały wyścig prezentował rewelacyjną formę i ofiarną jazdę dla swojego lidera, a dziś jadąc na maksimum możliwości przekazywał też Froomowi wskazówki jak jechać, dzięki czemu ten zajął trzecie miejsce i utrzymał przewagę nad rywalami.
Paweł Poljański (Bora-hansgrohe), trzeci z Polaków jadących w wyścigu, zajął 88. miejsce na etapie.
Wyniki 20. etapu:
- 1 Maciej Bodnar (Pol) Bora-Hansgrohe 0:28:15
- 2 Michał Kwiatkowski (Pol) Team Sky 0:00:01
- 3 Christopher Froome (GBr) Team Sky 0:00:06
- 4 Tony Martin (Ger) Katusha-Alpecin 0:00:14
- 5 Daryl Impey (RSA) Orica-Scott 0:00:20
- 6 Alberto Contador (Spa) Trek-Segafredo 0:00:21
- 7 Nikias Arndt (Ger) Team Sunweb 0:00:28
- 8 Rigoberto Uran (Col) Cannondale-Drapac 0:00:31
- 9 Stefan Küng (Swi) BMC Racing Team 0:00:34
- 10 Sylvain Chavanel (Fra) Direct Energie 0:00:37
- 11 Jack Bauer (NZl) Quick-Step Floors 0:00:41
- 12 Jasha Sütterlin (Ger) Movistar Team 0:00:42
- 13 Nils Politt (Ger) Katusha-Alpecin 0:00:43
- 14 Primoz Roglic (Slo) Team LottoNl-Jumbo 0:00:49
- 15 Mikel Landa (Spa) Team Sky 0:00:51
- 16 Tony Gallopin (Fra) Lotto Soudal 0:00:56
- 17 Taylor Phinney (USA) Cannondale-Drapac 0:01:06
- 18 Vasil Kiryienka (Blr) Team Sky 0:01:07
- 19 Warren Barguil (Fra) Team Sunweb 0:01:09
- 20 Alexis Vuillermoz (Fra) AG2R La Mondiale 0:01:11
- 21 Damiano Caruso (Ita) BMC Racing Team 0:01:13
- 22 Fabio Aru (Ita) Astana Pro Team 0:01:16
- 23 Tiesj Benoot (Bel) Lotto Soudal 0:01:21
- 24 Dylan Van Baarle (Ned) Cannondale-Drapac 0:01:22
- 25 Nicolas Roche (Irl) BMC Racing Team 0:01:25
- 26 Imanol Erviti (Spa) Movistar Team 0:01:26
- 27 Lilian Calmejane (Fra) Direct Energie 0:01:27
- 28 Jonathan Castroviejo (Spa) Movistar Team
- 29 Lars Ytting Bak (Den) Lotto Soudal
- 30 Carlos Betancur (Col) Movistar Team 0:01:28
- 31 Jay McCarthy (Aus) Bora-Hansgrohe
- 32 Simon Yates (GBr) Orica-Scott 0:01:34
- 33 Louis Meintjes (RSA) UAE Team Emirates
- 34 Bauke Mollema (Ned) Trek-Segafredo 0:01:36
- 35 Alexey Lutsenko (Kaz) Astana Pro Team
- 36 Nairo Quintana (Col) Movistar Team 0:01:42
- 37 Thomas De Gendt (Bel) Lotto Soudal 0:01:46
- 38 Brice Feillu (Fra) Team Fortuneo - Oscaro
- 39 Zdenek Stybar (Cze) Quick-Step Floors 0:01:47
- 40 Daniel Martin (Irl) Quick-Step Floors 0:01:52
- 41 Maxime Bouet (Fra) Team Fortuneo - Oscaro
- 42 Diego Ulissi (Ita) UAE Team Emirates
- 43 Danilo Wyss (Swi) BMC Racing Team
- 44 Ben Gastauer (Lux) AG2R La Mondiale
- 45 Nicolas Edet (Fra) Cofidis, Solutions Credits 0:01:54
- 46 Albert Timmer (Ned) Team Sunweb 0:01:56
- 47 Damien Howson (Aus) Orica-Scott
- 48 Haimar Zubeldia (Spa) Trek-Segafredo
- 49 Andrey Zeits (Kaz) Astana Pro Team 0:01:58
- 50 Romain Sicard (Fra) Direct Energie 0:02:01
- 51 Jan Bakelants (Bel) AG2R La Mondiale
- 52 Romain Bardet (Fra) AG2R La Mondiale 0:02:03
- 53 Julien Vermote (Bel) Quick-Step Floors
- 54 Florian Vachon (Fra) Team Fortuneo - Oscaro 0:02:07
- 55 Amael Moinard (Fra) BMC Racing Team 0:02:08
- 56 Michael Valgren Andersen (Den) Astana Pro Team 0:02:10
- 57 Andriy Grivko (Ukr) Astana Pro Team
- 58 Serge Pauwels (Bel) Dimension Data 0:02:11
- 59 Marco Marcato (Ita) UAE Team Emirates
- 60 Dmitriy Gruzdev (Kaz) Astana Pro Team 0:02:13
- 61 Michael Schär (Swi) BMC Racing Team
- 62 Pierre Latour (Fra) AG2R La Mondiale 0:02:15
- 63 Elie Gesbert (Fra) Team Fortuneo - Oscaro 0:02:16
- 64 Robert Wagner (Ger) Team LottoNl-Jumbo 0:02:19
- 65 Roman Kreuziger (Cze) Orica-Scott
- 66 Romain Hardy (Fra) Team Fortuneo - Oscaro
- 67 Andrew Talansky (USA) Cannondale-Drapac 0:02:20
- 68 Mikel Nieve (Spa) Team Sky 0:02:23
- 69 Tiago Machado (Por) Katusha-Alpecin 0:02:25
- 70 Thomas Degand (Bel) Wanty - Groupe Gobert
- 71 Axel Domont (Fra) AG2R La Mondiale
- 72 Emanuel Buchmann (Ger) Bora-Hansgrohe 0:02:26
- 73 Marcus Burghardt (Ger) Bora-Hansgrohe
- 74 Michael Albasini (Swi) Orica-Scott
- 75 Julien Simon (Fra) Cofidis, Solutions Credits 0:02:27
- 76 Jens Keukeleire (Bel) Orica-Scott 0:02:28
- 77 Markel Irizar (Spa) Trek-Segafredo
- 78 Michael Matthews (Aus) Team Sunweb 0:02:30
- 79 Frederik Backaert (Bel) Wanty - Groupe Gobert
- 80 Reto Hollenstein (Swi) Katusha-Alpecin 0:02:32
- 81 Pieter Vanspeybrouck (Bel) Wanty - Groupe Gobert 0:02:33
- 82 Mike Teunissen (Ned) Team Sunweb 0:02:34
- 83 Pierre Luc Perichon (Fra) Team Fortuneo - Oscaro
- 84 Gianluca Brambilla (Ita) Quick-Step Floors 0:02:35
- 85 Paul Martens (Ger) Team LottoNl-Jumbo 0:02:36
- 86 Greg Van Avermaet (Bel) BMC Racing Team
- 87 Alberto Bettiol (Ita) Cannondale-Drapac
- 88 Paweł Poljański (Pol) Bora-Hansgrohe 0:02:44
- 89 Ramon Sinkeldam (Ned) Team Sunweb
- 90 Rudy Molard (Fra) FDJ
- 91 Koen De Kort (Ned) Trek-Segafredo 0:02:45
- 92 Scott Thwaites (GBr) Dimension Data 0:02:46
- 93 Angelo Tulik (Fra) Direct Energie 0:02:47
- 94 Cyril Lemoine (Fra) Cofidis, Solutions Credits
- 95 Simon Geschke (Ger) Team Sunweb
- 96 Alessandro De Marchi (Ita) BMC Racing Team 0:02:50
- 97 Fabio Sabatini (Ita) Quick-Step Floors
- 98 Daniele Bennati (Ita) Movistar Team
- 99 Grega Bole (Slo) Bahrain-Merida 0:02:54
- 100 Christophe Laporte (Fra) Cofidis, Solutions Credits
- 101 Luke Rowe (GBr) Team Sky
- 102 Cyril Gautier (Fra) AG2R La Mondiale 0:02:56
- 103 Florian Senechal (Fra) Cofidis, Solutions Credits 0:03:00
- 104 Sonny Colbrelli (Ita) Bahrain-Merida
- 105 Guillaume Van Keirsbulck (Bel) Wanty - Groupe Gobert 0:03:04
- 106 Daniel Navarro (Spa) Cofidis, Solutions Credits 0:03:05
- 107 Guillaume Martin (Fra) Wanty - Groupe Gobert
- 108 Yukiya Arashiro (Jpn) Bahrain-Merida
- 109 Laurent Pichon (Fra) Team Fortuneo - Oscaro 0:03:07
- 110 Christian Knees (Ger) Team Sky
- 111 Rüdiger Selig (Ger) Bora-Hansgrohe
- 112 Edvald Boasson Hagen (Nor) Dimension Data
- 113 Mathias Frank (Swi) AG2R La Mondiale 0:03:08
- 114 Jesus Herrada (Spa) Movistar Team 0:03:09
- 115 Eduardo Sepulveda (Arg) Team Fortuneo - Oscaro 0:03:10
- 116 Jurgen Roelandts (Bel) Lotto Soudal 0:03:11
- 117 Luis Angel Mate (Spa) Cofidis, Solutions Credits 0:03:15
- 118 Marco Minnaard (Ned) Wanty - Groupe Gobert
- 119 Rick Zabel (Ger) Katusha-Alpecin 0:03:18
- 120 Patrick Bevin (NZl) Cannondale-Drapac 0:03:20
- 121 Yoann Offredo (Fra) Wanty - Groupe Gobert 0:03:21
- 122 Simon Clarke (Aus) Cannondale-Drapac 0:03:22
- 123 Janez Brajkovic (Slo) Bahrain-Merida
- 124 André Greipel (Ger) Lotto Soudal
- 125 Maurits Lammertink (Ned) Katusha-Alpecin 0:03:23
- 126 Michael Gogl (Aut) Trek-Segafredo 0:03:24
- 127 Perrig Quemeneur (Fra) Direct Energie 0:03:25
- 128 Bakhtiyar Kozhatayev (Kaz) Astana Pro Team
- 129 Nathan Brown (USA) Cannondale-Drapac
- 130 Olivier Le Gac (Fra) FDJ
- 131 Andrea Pasqualon (Ita) Wanty - Groupe Gobert 0:03:26
- 132 Kristijan Durasek (Cro) UAE Team Emirates 0:03:27
- 132 Sergio Henao (Col) Team Sky
- 134 Vegard Stake Laengen (Nor) UAE Team Emirates
- 134 Dion Smith (NZl) Wanty - Groupe Gobert
- 136 Stephen Cummings (GBr) Dimension Data 0:03:30
- 137 Robert Kiserlovski (Cro) Katusha-Alpecin 0:03:31
- 138 Laurens Ten Dam (Ned) Team Sunweb
- 139 Davide Cimolai (Ita) FDJ 0:03:32
- 140 Borut Bozic (Slo) Bahrain-Merida 0:03:38
- 141 Thomas Voeckler (Fra) Direct Energie 0:03:40
- 142 Jaco Venter (RSA) Dimension Data
- 143 Oliver Naesen (Bel) AG2R La Mondiale 0:03:41
- 144 John Degenkolb (Ger) Trek-Segafredo 0:03:44
- 145 Dylan Groenewegen (Ned) Team LottoNl-Jumbo 0:03:47
- 146 Pierre Rolland (Fra) Cannondale-Drapac 0:03:49
- 147 Adrien Petit (Fra) Direct Energie
- 148 Reinardt Janse Van Rensburg (RSA) Dimension Data 0:03:51
- 149 Tsgabu Grmay (Eth) Bahrain-Merida
- 150 Thomas Boudat (Fra) Direct Energie 0:03:53
- 151 Bernhard Eisel (Aut) Dimension Data 0:03:57
- 152 Adam James Hansen (Aus) Lotto Soudal 0:03:58
- 153 Marco Haller (Aut) Katusha-Alpecin
- 154 Ben Swift (GBr) UAE Team Emirates 0:03:59
- 155 Yohann Gene (Fra) Direct Energie 0:04:05
- 156 Darwin Atapuma (Col) UAE Team Emirates 0:04:06
- 157 Mathew Hayman (Aus) Orica-Scott 0:04:09
- 158 Esteban Chaves (Col) Orica-Scott 0:04:11
- 159 Roy Curvers (Ned) Team Sunweb
- 160 Nacer Bouhanni (Fra) Cofidis, Solutions Credits 0:04:23
- 161 Thomas Leezer (Ned) Team LottoNl-Jumbo 0:04:24
- 162 Dimitri Claeys (Bel) Cofidis, Solutions Credits
- 163 Andrey Amador (CRc) Movistar Team 0:04:25
- 164 Alexander Kristoff (Nor) Katusha-Alpecin 0:04:32
- 165 Javier Moreno (Spa) Bahrain-Merida 0:04:38
- 166 Matteo Bono (Ita) UAE Team Emirates 0:04:45
- 167 Jarlinson Pantano (Col) Trek-Segafredo 0:05:10
Klasyfikacja generalna po 20. etapie:
- 1 Christopher Froome (GBr) Team Sky 83:55:16
- 2 Rigoberto Uran (Col) Cannondale-Drapac 0:00:54
- 3 Romain Bardet (Fra) AG2R La Mondiale 0:02:20
- 4 Mikel Landa (Spa) Team Sky 0:02:21
- 5 Fabio Aru (Ita) Astana Pro Team 0:03:05
- 6 Daniel Martin (Irl) Quick-Step Floors 0:04:42
- 7 Simon Yates (GBr) Orica-Scott 0:06:14
- 8 Louis Meintjes (RSA) UAE Team Emirates 0:08:20
- 9 Alberto Contador (Spa) Trek-Segafredo 0:08:49
- 10 Warren Barguil (Fra) Team Sunweb 0:09:25
- 11 Damiano Caruso (Ita) BMC Racing Team 0:14:48
- 12 Nairo Quintana (Col) Movistar Team 0:15:28
- 13 Alexis Vuillermoz (Fra) AG2R La Mondiale 0:24:38
- 14 Mikel Nieve (Spa) Team Sky 0:25:28
- 15 Emanuel Buchmann (Ger) Bora-Hansgrohe 0:33:21
- 16 Brice Feillu (Fra) Team Fortuneo - Oscaro 0:36:46
- 17 Bauke Mollema (Ned) Trek-Segafredo 0:37:43
- 18 Carlos Betancur (Col) Movistar Team 0:37:47
- 19 Serge Pauwels (Bel) Dimension Data 0:39:36
- 20 Tiesj Benoot (Bel) Lotto Soudal 0:42:04
- 21 Tony Gallopin (Fra) Lotto Soudal 0:42:39
- 22 Jan Bakelants (Bel) AG2R La Mondiale 0:50:04
- 23 Guillaume Martin (Fra) Wanty - Groupe Gobert 0:53:52
- 24 Roman Kreuziger (Cze) Orica-Scott 0:59:58
- 25 Sylvain Chavanel (Fra) Direct Energie 1:04:22
- 26 Pierre Latour (Fra) AG2R La Mondiale 1:12:43
- 27 Romain Hardy (Fra) Team Fortuneo - Oscaro 1:12:51
- 28 Daniel Navarro (Spa) Cofidis, Solutions Credits 1:14:35
- 29 Sergio Henao (Col) Team Sky 1:16:32
- 30 Mathias Frank (Swi) AG2R La Mondiale 1:21:16
- 31 Robert Kiserlovski (Cro) Katusha-Alpecin 1:25:25
- 32 Amael Moinard (Fra) BMC Racing Team 1:32:02
- 33 Nicolas Roche (Irl) BMC Racing Team 1:32:35
- 34 Thomas Degand (Bel) Wanty - Groupe Gobert 1:34:02
- 35 Lilian Calmejane (Fra) Direct Energie 1:35:16
- 36 Rudy Molard (Fra) FDJ 1:35:55
- 37 Ben Gastauer (Lux) AG2R La Mondiale 1:38:33
- 38 Primoz Roglic (Slo) Team LottoNl-Jumbo 1:39:49
- 39 Diego Ulissi (Ita) UAE Team Emirates 1:45:23
- 40 Marco Minnaard (Ned) Wanty - Groupe Gobert 1:48:11
- 41 Darwin Atapuma (Col) UAE Team Emirates 1:49:40
- 42 Pierre Luc Perichon (Fra) Team Fortuneo - Oscaro 1:57:29
- 43 Nathan Brown (USA) Cannondale-Drapac 1:57:52
- 44 Andrey Zeits (Kaz) Astana Pro Team 1:59:09
- 45 Janez Brajkovic (Slo) Bahrain-Merida 2:00:38
- 46 Jarlinson Pantano (Col) Trek-Segafredo 2:01:30
- 47 Daryl Impey (RSA) Orica-Scott 2:01:59
- 48 Cyril Gautier (Fra) AG2R La Mondiale 2:03:24
- 49 Andrew Talansky (USA) Cannondale-Drapac 2:03:27
- 50 Thomas De Gendt (Bel) Lotto Soudal 2:04:45
- 51 Kristijan Durasek (Cro) UAE Team Emirates 2:04:53
- 52 Haimar Zubeldia (Spa) Trek-Segafredo 2:06:30
- 53 Gianluca Brambilla (Ita) Quick-Step Floors 2:06:57
- 54 Pierre Rolland (Fra) Cannondale-Drapac 2:10:23
- 55 Maxime Bouet (Fra) Team Fortuneo - Oscaro 2:13:23
- 56 Luis Angel Mate (Spa) Cofidis, Solutions Credits 2:15:28
- 57 Michał Kwiatkowski (Pol) Team Sky 2:17:48
- 58 Greg Van Avermaet (Bel) BMC Racing Team 2:19:14
- 59 Jonathan Castroviejo (Spa) Movistar Team 2:21:28
- 60 Jens Keukeleire (Bel) Orica-Scott 2:22:26
- 61 Simon Geschke (Ger) Team Sunweb 2:24:05
- 62 Michael Valgren Andersen (Den) Astana Pro Team 2:25:36
- 63 Esteban Chaves (Col) Orica-Scott 2:27:34
- 64 Oliver Naesen (Bel) AG2R La Mondiale 2:28:02
- 65 Romain Sicard (Fra) Direct Energie 2:29:46
- 66 Laurens Ten Dam (Ned) Team Sunweb 2:30:04
- 67 Eduardo Sepulveda (Arg) Team Fortuneo - Oscaro 2:31:05
- 68 Axel Domont (Fra) AG2R La Mondiale 2:35:33
- 69 Michael Matthews (Aus) Team Sunweb 2:36:36
- 70 Alexey Lutsenko (Kaz) Astana Pro Team 2:37:39
- 71 Koen De Kort (Ned) Trek-Segafredo 2:38:33
- 72 Tsgabu Grmay (Eth) Bahrain-Merida 2:40:10
- 73 Michael Schär (Swi) BMC Racing Team 2:41:03
- 74 Tiago Machado (Por) Katusha-Alpecin 2:43:36
- 75 Maurits Lammertink (Ned) Katusha-Alpecin 2:44:01
- 76 Nicolas Edet (Fra) Cofidis, Solutions Credits 2:44:20
- 77 Dylan Van Baarle (Ned) Cannondale-Drapac 2:47:11
- 78 Edvald Boasson Hagen (Nor) Dimension Data 2:48:16
- 79 Stefan Küng (Swi) BMC Racing Team 2:49:17
- 80 Paul Martens (Ger) Team LottoNl-Jumbo 2:49:22
- 81 Paweł Poljański (Pol) Bora-Hansgrohe 2:53:42
- 82 Danilo Wyss (Swi) BMC Racing Team 2:53:51
- 83 Ben Swift (GBr) UAE Team Emirates 2:54:48
- 84 Nikias Arndt (Ger) Team Sunweb 2:54:54
- 85 Thomas Voeckler (Fra) Direct Energie 2:55:13
- 86 Elie Gesbert (Fra) Team Fortuneo - Oscaro
- 87 Simon Clarke (Aus) Cannondale-Drapac 2:55:27
- 88 Angelo Tulik (Fra) Direct Energie 2:56:27
- 89 Andrey Amador (CRc) Movistar Team 2:56:43
- 90 Damien Howson (Aus) Orica-Scott 2:56:57
- 91 Alberto Bettiol (Ita) Cannondale-Drapac 2:57:56
- 92 Imanol Erviti (Spa) Movistar Team 3:00:21
- 93 Nils Politt (Ger) Katusha-Alpecin 3:03:28
- 94 Bakhtiyar Kozhatayev (Kaz) Astana Pro Team 3:04:11
- 95 Jesus Herrada (Spa) Movistar Team 3:04:49
- 96 Jay McCarthy (Aus) Bora-Hansgrohe 3:05:13
- 97 Alessandro De Marchi (Ita) BMC Racing Team 3:05:25
- 98 Marco Marcato (Ita) UAE Team Emirates 3:05:53
- 99 Michael Albasini (Swi) Orica-Scott 3:06:55
- 100 Tony Martin (Ger) Katusha-Alpecin 3:08:13
- 101 Pieter Vanspeybrouck (Bel) Wanty - Groupe Gobert 3:09:38
- 102 Zdenek Stybar (Cze) Quick-Step Floors 3:09:48
- 103 Florian Vachon (Fra) Team Fortuneo - Oscaro 3:13:10
- 104 Daniele Bennati (Ita) Movistar Team 3:13:44
- 105 Perrig Quemeneur (Fra) Direct Energie 3:14:24
- 106 Scott Thwaites (GBr) Dimension Data 3:15:12
- 107 Jack Bauer (NZl) Quick-Step Floors 3:15:13
- 108 Jasha Sütterlin (Ger) Movistar Team 3:17:53
- 109 Yukiya Arashiro (Jpn) Bahrain-Merida 3:18:16
- 110 Matteo Bono (Ita) UAE Team Emirates 3:19:21
- 111 Yoann Offredo (Fra) Wanty - Groupe Gobert 3:20:50
- 112 Vasil Kiryienka (Blr) Team Sky 3:21:15
- 113 Adam James Hansen (Aus) Lotto Soudal 3:22:31
- 114 Patrick Bevin (NZl) Cannondale-Drapac 3:23:00
- 115 Dmitriy Gruzdev (Kaz) Astana Pro Team 3:24:42
- 116 Maciej Bodnar (Pol) Bora-Hansgrohe 3:24:58
- 117 Julien Simon (Fra) Cofidis, Solutions Credits 3:29:21
- 118 Reinardt Janse Van Rensburg (RSA) Dimension Data 3:30:54
- 119 Javier Moreno (Spa) Bahrain-Merida 3:32:06
- 120 Andriy Grivko (Ukr) Astana Pro Team 3:32:14
- 121 John Degenkolb (Ger) Trek-Segafredo 3:32:59
- 122 Lars Ytting Bak (Den) Lotto Soudal 3:36:13
- 123 Sonny Colbrelli (Ita) Bahrain-Merida 3:36:22
- 124 Dion Smith (NZl) Wanty - Groupe Gobert 3:39:24
- 125 Laurent Pichon (Fra) Team Fortuneo - Oscaro 3:39:45
- 126 Adrien Petit (Fra) Direct Energie 3:41:34
- 127 Vegard Stake Laengen (Nor) UAE Team Emirates 3:41:52
- 128 Marcus Burghardt (Ger) Bora-Hansgrohe 3:43:33
- 129 Cyril Lemoine (Fra) Cofidis, Solutions Credits 3:43:45
- 130 Mike Teunissen (Ned) Team Sunweb 3:43:52
- 131 Alexander Kristoff (Nor) Katusha-Alpecin 3:45:40
- 132 Frederik Backaert (Bel) Wanty - Groupe Gobert 3:46:36
- 133 Christophe Laporte (Fra) Cofidis, Solutions Credits 3:46:47
- 134 Yohann Gene (Fra) Direct Energie 3:47:08
- 135 Markel Irizar (Spa) Trek-Segafredo 3:47:10
- 136 Jurgen Roelandts (Bel) Lotto Soudal 3:47:20
- 137 Stephen Cummings (GBr) Dimension Data 3:48:18
- 138 Andrea Pasqualon (Ita) Wanty - Groupe Gobert 3:51:18
- 139 Nacer Bouhanni (Fra) Cofidis, Solutions Credits 3:51:29
- 140 Julien Vermote (Bel) Quick-Step Floors 3:51:38
- 141 Roy Curvers (Ned) Team Sunweb 3:52:34
- 142 Thomas Boudat (Fra) Direct Energie 3:53:08
- 143 Rick Zabel (Ger) Katusha-Alpecin 3:55:10
- 144 Grega Bole (Slo) Bahrain-Merida 3:55:29
- 145 Christian Knees (Ger) Team Sky 3:55:31
- 146 Michael Gogl (Aut) Trek-Segafredo 3:59:06
- 147 Guillaume Van Keirsbulck (Bel) Wanty - Groupe Gobert 3:59:48
- 148 Ramon Sinkeldam (Ned) Team Sunweb 4:01:54
- 149 André Greipel (Ger) Lotto Soudal 4:03:00
- 150 Reto Hollenstein (Swi) Katusha-Alpecin 4:03:45
- 151 Mathew Hayman (Aus) Orica-Scott 4:04:13
- 152 Davide Cimolai (Ita) FDJ 4:06:15
- 153 Bernhard Eisel (Aut) Dimension Data 4:09:02
- 154 Fabio Sabatini (Ita) Quick-Step Floors 4:10:25
- 155 Marco Haller (Aut) Katusha-Alpecin 4:13:50
- 156 Albert Timmer (Ned) Team Sunweb 4:14:43
- 157 Jaco Venter (RSA) Dimension Data 4:15:24
- 158 Dylan Groenewegen (Ned) Team LottoNl-Jumbo 4:16:12
- 159 Florian Senechal (Fra) Cofidis, Solutions Credits 4:17:12
- 160 Olivier Le Gac (Fra) FDJ 4:17:21
- 161 Taylor Phinney (USA) Cannondale-Drapac 4:18:15
- 162 Borut Bozic (Slo) Bahrain-Merida 4:18:41
- 163 Dimitri Claeys (Bel) Cofidis, Solutions Credits 4:19:10
- 164 Robert Wagner (Ger) Team LottoNl-Jumbo 4:24:13
- 165 Rüdiger Selig (Ger) Bora-Hansgrohe 4:26:43
- 166 Thomas Leezer (Ned) Team LottoNl-Jumbo 4:30:16
- 167 Luke Rowe (GBr) Team Sky 4:35:52