Une fois les deux hommes de tête repris, l'équipe Sky ralentit en tête de peloton car la pente, bien que légère, gène Kittel. Mais l'allemand s'accroche, et il est toujours là, entouré par ses équipiers, sous la flamme rouge. C'est le moment choisi pat Brambilla (Movistar) pour tenter sa chance, suivi par Alaphilippe (Quick Step). Mais le travail de Morton (Dimension Data) a raison des deux attaquants, qui sont repris à 350 m de la ligne. Puis Cort Nielsen (Dimension Data) lance son sprint à 250 m, un temps on pense Kittel capable de venir le chercher, mais l'allemand a trop souffert dans la montée roulante du final pour produire un effort aussi long et il s'écroule à 50 m de la ligne. Cort Nielsen s'impose ainsi assez nettement devant Felline et Moscon.
Classement de l'étape
1. Magnus Cort Nielsen (Dimension Data)
2. Fabio Felline (Sunweb), m.t.
3. Gianni Moscon (BMC), m.t.
4. Nikias Arndt (Sunweb), m.t.
5. Alberto Bettiol (Mitchelton-Scott), m.t.
6. Marcel Kittel (Sky), m.t.
7. Lachlan Morton (Dimension Data), m.t.
8. Diego Ulissi (UAE Emirates), m.t.
9. Peio Bilbao (Astana), m.t.
10. Sergio Henao (Barhain-Merida), m.t.
Classement général
1. Magnus Cort Nielsen (Dimension Data)
2. Fabio Felline (Sunweb), à 4''
3. Gianni Moscon (BMC), à 6''.
4. Nikias Arndt (Sunweb), à 10''
5. Alberto Bettiol (Mitchelton-Scott), m.t.
6. Marcel Kittel (Sky), m.t.
7. Lachlan Morton (Dimension Data), m.t.
8. Diego Ulissi (UAE Emirates), m.t.
9. Peio Bilbao (Astana), m.t.
10. Sergio Henao (Barhain-Merida), m.t.