Après deux étapes de plus de deux cents kilomètres chacune, cette étape courte de seulement 150 kilomètres comporte deux sprints intermédiaires, situés à Pieve di Teco (km 43,7) et à San Michele di Mondovi, et une ascension répertoriée, le Colle di Nava (10,4 km à 6,6 %, 3C), escaladé dans le premier tiers de l'étape. Malgré une première moitié d'étape favorable aux baroudeurs, la victoire d'étape devrait revenir à un sprinteur.
Dès le kilomètre zéro, un groupe de sept coureurs mène la course devant le peloton, mais est repris au bout de six kilomètres, par un peloton emmené par la Groupama FDJ.
Finalement, une échappée de cinq coureurs est accordée, avec : le Français Nicolas Prodhomme (AG2R Citroën), les deux Italiens Mirco Maestri (Eolo-Kometa) et Filippo Tagliani (Drone Hopper-Androni Giocattoli) et les deux Néerlandais Julius van den Berg (EF Education-EasyPost) et Pascal Eenkhoorn (Jumbo-Visma).
Après 40 kilomètres, le 4ème du classement général, Romain Bardet (DSM), est contraint à l'abandon. C'est un véritable coup dur pour le Français qui, dans une très grande forme après sa victoire au Tour des Alpes, faisait partie des grands favoris.
Au sprint intermédiaire de Pieve di Teco (km 43,7), Tagliani passe en tête devant van den Berg ; le peloton compte un retard de trois minutes et trente-huit secondes.
Au sommet du Colle di Nava (10,4 km à 6,6 %, 3C), Eenkhoorn devance Prodhomme ; lâché, Tagliani compte deux minutes et quarante-huit secondes de débours, il sera finalement repris par le peloton à quatre-vingt-cinq kilomètres de l'arrivée. Derrière, le peloton passe avec un retard de six minutes et quarante-trois secondes.
Au sprint intermédiaire de San Michele di Mondovi (km 112), l'échappée, menée par Julius van den Berg, compte une avance de trois minutes et cinquante secondes sur le peloton.
Les membres de l'échappée ne sont repris que dans les 500 derniers mètres et la victoire se joue au sprint massif par le peloton. Le Français Arnaud Démare (Groupama-FDJ) s'impose devant l'Allemand Phil Bauhaus (Bahrain Victorious) et le Britannique Mark Cavendish (Quick-Step Alpha Vinyl), le sprinteur Français signe donc un triplé sur cette 105e édition du Tour d'Italie.
Rien ne change dans les différents classements : Juan Pedro López conserve le maillot rose et le maillot blanc, Arnaud Démare conforte le maillot violet et l'Italien Diego Rosa (Eolo-Kometa) le maillot bleu. L'équipe Intermarché-Wanty-Gobert Matériaux mène le classement par équipes.