Nach dem offiziellen Start kam es zu den ersten Angriffen aus dem Hauptfeld, wobei sich keine Gruppe entscheidend absetzten konnte. In der nervösen Anfangsphase kam es im Peloton zu einem Sturz, in den auch Lenny Martinez, Romain Grégoire (beide Groupama-FDJ), Wilco Kelderman (Jumbo-Visma) und Eduardo Sepúlveda (Lotto Dstny) involviert waren. Nach rund 40 Kilometern fuhr das immer noch geschlossene Fahrerfeld über den Puerto de Arenillas, wo sich Jesús Herrada (Cofidis) die meisten Punkte vor Oier Lazkano (Movistar) und Nicolas Prodhomme (AG2R Citroën) sicherte. Nach der anschließenden Abfahrt teilte sich das Hauptfeld nach rund 70 gefahrenen Kilometern in zwei Gruppen. In der ersten Gruppe, die mehr als 40 Fahrer umfasste, war auch Lenny Martinez vertreten, der als Gesamtdritter einen Rückstand von 17 Sekunden im Gesamtklassement aufwies.
Auf der Alto Fuente de Rubielos zerfiel die Spitzengruppe kurzzeitig, die mittlerweile einen Vorsprung von rund fünf Minuten auf das Hauptfeld herausgefahren hatte. Die Bergwertung gewann der Spanier Marc Soler (UAE Team Emirates). Nach der schnellen Anfangsphase und den zahlreichen Stürzen stiegen sowohl Lorenzo Milesi (DSM-Firmenich), als auch Jay Vine (UAE Team Emirates), Andrea Bagioli (Soudal Quick-Step) und Andrea Vendrame (AG2R Citroën) vorzeitig vom Rad.
Auf dem nachfolgenden Plateau formierte sich schließlich die Ausreißergruppe des Tages, in der folgende Mannschaften (sortiert nach dem bestplatzierten Fahrer in der Gesamtwertung) vertreten waren: Lenny Martinez, Rudy Molard, Michael Storer (alle Groupama-FDJ), Marc Soler (UAE Team Emirates), Sepp Kuss, Attila Valter, Jan Tratnik, Dylan van Baarle (alle Jumbo-Visma), Steff Cras, Paul Ourselin, Fabien Doubey (alle TotalEnergies), Wout Poels, Mikel Landa, Santiago Buitrago (alle Bahrain Victorious), Jefferson Cepeda, Fernando Barceló (beide Caja Rural-Seguros RGA), David de la Cruz, Javier Romo (beide Astana Qazaqstan), Rémy Rochas, Rubén Fernández, Jesús Herrada (alle Cofidis), Juan Pedro López (Lidl-Trek), Hugh Carthy (EF Education-EasyPost), Einer Rubio, Oier Lazkano (beide Movistar), Christián Rodríguez (Arkéa-Samsic), Lennard Kämna, Emanuel Buchmann (beide Bora-hansgrohe), Romain Bardet, Max Poole (beide DSM-Firmenich), Mattia Cattaneo, Louis Vervaeke (beide Soudal Quick-Step), Jonathan Castroviejo (Ineos Grenadiers), Felix Engelhardt (Jayco AlUla), Dorian Godon, Nicolas Prodhomme (beide AG2R Citroën), Lennert Van Eetvelt, Sylvain Moniquet, Andreas Kron (alle Lotto Dstny) und Rui Costa (Intermarché-Circus-Wanty). Im Hauptfeld übernahmen die Mannschaften Soudal Quick-Step, Ineos Grenadiers und Movistar die Nachführarbeit, um den zwischenzeitlich sechseinhalb Minuten großen Rückstand zu reduzieren. Beim Zwischensprint in Torrijas sicherte sich Marc Soler sechs Bonussekunden, während die weiteren Zeitbonifikationen an Oier Lazkano und Andreas Kron gingen. Am Fuß der Schlusssteigung betrug der Vorsprung der Spitzengruppe rund dreieinhalb Minuten.
Im unteren Teil des Anstiegs hielt Michael Storer das Tempo für seinen Teamkollegen Lenny Martinez hoch, ehe Einer Rubio rund vier Kilometer vor dem Ziel angriff. Wenig später schlossen Lenny Martinez, Sepp Kuss und Romain Bardet zudem Kolumbianer auf. Im oberen Teil des Anstiegs griff Sepp Kuss an und konnte sich entscheidend absetzten. Der Amerikaner gewann die Etappe mit einem Vorsprung von 26 Sekunden vor Lenny Martinez, der das Rote Trikot übernahm. Platz drei ging an Romain Bardet mit, der sich die verbliebenen Zeitbonifikationen sicherte. Dahinter zerfiel das Hauptfeld bereits auf den ersten Kilometern des Schlussanstiegs. Vier Kilometer vor dem Ziel griff Primož Roglič (Jumbo-Visma) an, während der gesamtführende Remco Evenepoel zurückfiel. Hinter dem Slowenen formierte sich eine kleine Gruppe in der sein Teamkollege Jonas Vingegaard, Enric Mas (Movistar), Juan Ayuso (UAE Team Emirates) und Cian Uijtdebroeks (Bora-hansgrohe) vertreten waren. Enric Mas konnte gemeinsam mit Jonas Vingegaard zum Hinterrad von Primož Roglič auchschließen, verlor nach einer weiteren Tempoverschärfung jedoch den Kontakt zu dem Jumbo-Visma-Duo. Primož Roglič und Jonas Vingegaard erreichten das Ziel auf den Plätzen 18 und 19 mit einem Rückstand von zwei Minuten und 52 Sekunden. Sieben Sekunden dahinter folgte Juan Ayuso, während und João Almeida (UAE Team Emirates) und Cian Ujtebroecks mit weitere sieben Sekunden Verspätung über die Ziellinie fuhren. Enric Mas verlor drei Minuten und 16 Sekunden auf den Etappensieger, ehe Remco Evenepoel das Ziel als 24. mit einem Rückstand von drei Minuten und 24 Sekunden erreichte. Auch Alexander Wlassow (Bora-hansgrohe) blieb innerhalb der Vier-Minuten-Marke, während Geraint Thomas und Thymen Arensman (beide Ineos Grenadiers) zwischen vier und fünf Minuten auf den Etappensieger verloren.
In der Gesamtwertung kam es aufgrund der großen Ausreißergruppe zu zahlreichen Veränderungen. Lenny Martinez übernahm die Gesamtführung und lag nun acht Sekunden vor Sepp Kuss und 51 Sekunden vor Marc Soler. Remco Evenepoel rutschte auf den neunten Gesamtrang ab, lag mit einem Rückstand von zwei Minuten und 47 Sekunden jedoch weiterhin vor Jonas Vingegaard und Primož Roglič, die drei und elf weitere Sekunden zurücklagen. Dazwischen befand sich Enric Mas mit einem Rückstand von zwei Minuten und 50 Sekunden als Gesamtzehnter. Auch Juan Ayuso, Cian Ujtebroecks und João Almeida lagen mit weniger als 30 Sekunden Rückstand auf Remco Evenepoel in unmittelbarer Schlagdistanz. Kaden Groves (Alpecin-Deceuninck) und Eduardo Sepúlveda verteidigten ihre Führungen in der Punkte- bzw. Bergwertung, während Lenny Martinez auch die Nachwuchswertung übernahm. Mikel Landa wurde zum kämpferischsten Fahrer gewählt und sein Team Bahrain Victorious schob sich an die Spitze der Mannschaftswertung. Nach den Ausfällen von Michael Hepburn (Jayco AlUla), Jay Vine, Andrea Bagioli und Andrea Vendrame verblieben noch 165 Fahrer im Rennen.[2][3]