Tadej Pogacar prova a conquistare a fare il bis, ma stavolta deve arrendersi ai velocisti. Lo sloveno dell'UAE Team Emirates ha provato ad attaccare nell'ultimo chilometro sfruttando un colpo di mano portato avanti da Mikkel Honorè (EF Education-EasyPost), tuttavia ha dovuto cedere il passo a Tim Merlier (Soudal-Quick Step) che ha preceduto Jonathan Milan (Lidl-Trek).
Tappa chiusa sin dall'inizio con la fuga portata avanti da Davide Ballerini (Astana Qazaqstan Team) e Lilian Calmejane (Intermarché-Wanty) che hanno guadagnato un vantaggio massimo di un minuto e mezzo prima di rialzarsi dopo il gran premio della montagna e farsi riprendere dal gruppo. Ciò ha portato a una possibile volata sino all'ultimo chilometro quando ha scattare è stato Tadej Pogacar (UAE Team Emirates) che si è portato dietro Geraint Thomas (Ineos-Grenadiers). Ciò non è bastato per evitare il rientro dei velocisti con Merlier che ha bruciato Milan e Girmay sull'arrivo.
La maglia rosa rimane sulle spalle di Pogacar che conserva la maglia con quarantacinque secondi di vantaggio su Thomas e su Daniel Martinez (Bora-Hansgrohe), mentre Lorenzo Fortunato (Astana Qazqastan Team) rimane al sesto posto a 1'05".