Après une quinzaine de kilomètres, les Français Anthony Perez (Cofidis) et Alexys Brunel (Groupama-FDJ) ainsi que l'Italien Filippo Ganna (Ineos Grenadiers) passaient à l'offensive.

Le champion de Belgique Dries De Bondt (Alpecin-Fenix) et Ludovic Robeet (Bingoal-Wallonie Bruxelles) se joignaient à eux après un peu plus de 30 km de course. Le peloton ne leur laissait qu'une marge de 2 minutes.

A 20 km de l'arrivée, un nouveau groupe de sept hommes se formait à l'avant. De Bondt, Ganna, Perez et Brunel restaient devant, rejoints par l'Italien Alberto Bettiol (EF Education-Nippo) et les Français Pierre Latour et Anthony Turgis (Total Direct Energie).

A 8 kilomètres de la ligne, Ganna faussait compagnie aux autres échappés. Champion du monde du contre-la-montre, l'Italien creusait d'emblée l'écart. A 24 ans, Ganna décroche la 11e victoire de sa carrière, la 2e dans une épreuve en ligne après une victoire en solitaire dans la 5e étape du Giro l'an passé. Tous ses autres succès ont été obtenus dans des chronos.

Le Français Christophe Laporte (Cofidis) prenait la deuxième place à 17 secondes, devant l'Allemand Pascal Ackermann (Bora-Hansgrohe), Greg Van Avermaet (AG2R Citroën) et Milan Menten (Bingoal-Wallonie-Bruxelles).

Dimanche, la 51e édition de l'Etoile de Bessèges-Tour du Gard s'achèvera par un contre-la-montre de 11 km autour d'Alès. Tim Wellens tentera de conserver sa première place au général pour succéder à Benoît Cosnefroy au palmarès. Wellens démarrera ce chrono avec 44 secondes d'avance sur Edward Theuns (Trek-Segafredo) et 46 secondes sur le Danois Mads Würtz Schmidt.