Le champion des Pays-Bas s'est imposé avec 4 secondes d'avance sur le Portugais Ruben Guerreiro (EF Pro Cycling) et l'Italien Matteo Fabbro (BORA-hansgrohe).

Le Britannique Simon Yates (Mitchelton-Scott), 6e de l'étape, conserve le maillot bleu de leader. Matteo Fabbro était parti seul à environ 12 km de l'arrivée, a été repris par van der Poel dans les cent derniers mètres. Mathieu van der Poel, 25 ans, a signé sa 24e victoire en carrière sur la route, la seconde cette année après le championnat des Pays-Bas.

Simon Yates conserve la tête du général avec 16 secondes d'avance sur le Polonais Rafal Majka (BORA-hansgrohe) et 39 sur le Britannique Geraint Thomas (Ineos). Le premier Belge au général est Louis Vervaeke (Alpecin-Fenix), 15e à 3:54. Il est aussi le premier Belge de l'étape, qu'il a terminée en 16e position à 15 secondes du vainqueur. La 'Course des deux mers' s'achèvera lundi par un contre-la-montre à San Benedetto del Tronto (10,1 km). Le successeur de Primoz Roglic, vainqueur l'an passé, sera alors connu.