Nach dem offiziellen Start führte die Strecke leicht ansteigend nach Maceda, ehe es großteils flach über Esgos nach Luintra ging. Nahe des Sil führte die Strecke weiter in Richtung Osten, bevor es von Parada de Sil nach Vilariño Frío ging. Kurz nach Castro Caldelas erreichten die Fahrer Sas de Penelas, wo bei Kilometer 101,1 der einzige Zwischensprint am Ende einer kurzen, flachen Steigung abgenommen wurde. Hier wurden zudem auch Bonussekunden vergeben. Auf der OU-536 ging es nun leicht abschüssig nach A Pobra de Trives, wo der Schlussanstieg zur Estación de Montaña de Manzaneda begann.
Die Auffahrt zur Estación de Montaña de Manzaneda war 15,4 Kilometer lang und wies eine durchschnittliche Steigung von 4,7 % auf. Die ersten acht Kilometer verliefen auf der OU-0703 die bei teils geringen Steigungsprozenten von weniger als 5 % in Richtung Westen führte. Im Anschluss bogen die Fahrer links auf die OUR-CV-652 ab, wo die Steigungsprozente anfangs deutlich zunahmen und Kilometerschnitte von mehr als 6 % erreicht wurden. Rund vier Kilometer vor dem Ziel folgte ein flacher Kilometer, ehe die höchsten Steigungsprozente von maximal 12 % auf den letzten beiden Kilometern erreicht wurden. Im Ziel wurde auf einer Höhe von 1488 Metern eine Bergwertung der 1. Kategorie abgenommen.[1]
Mit Lennert Van Eetvelt (Lotto Dstny) ging ein Fahrer nicht an den Start der 12. Etappe. Nach rund 30 Kilometern setzten sich mit Harold Tejada (Astana Qazaqstan), Óscar Rodríguez (Ineos Grenadiers), Louis Meintjes (Intermarché-Wanty), Max Poole (dsm-firmenich PostNL), Mauri Vansevenant (Soudal Quick-Step), Carlos Verona (Lidl-Trek), Marc Soler (UAE Team Emirates), Pablo Castrillo (Kern Pharma) und Mauro Schmid (Jayco AlUla) neun Fahrer vom Hauptfeld ab. Zunächst versuchten jedoch weitere Fahrer zu der Spitzengruppe aufzuschließen, wobei sich zwischenzeitlich eine 14 Fahrer umfassende Verfolgergruppe löste, und er auch Wout van Aert (Visma-Lease a Bike) und Kaden Groves (Alpecin-Deceuninck) vertreten waren. Einzig der Ecuadorianer Jhonatan Narváez (Ineos Grenadiers) schaffte jedoch rund 90 Kilometer vor dem Ziel den Sprung in die Spitzengruppe. Dahinter versuchten Michael Woods (Israel-Premier Tech) und Laurens Huys (Arkéa-B&B Hotels) ebenfalls die Lücke zu schließen, was ihnen jedoch nicht gelang.
Nachdem sich die Rennsituation beruhigt hatte, konnten die Ausreißer einen maximalen Vorsprung von mehr als zehn Minuten herausfahren. Beim Zwischensprint in Sas de Penelas setzte sich Mauri Vansevenant durch, wobei er sich vor Carlos Verona und Harold Tejada auch die meisten Zeitbonifikationen sicherte.
Im Schlussanstieg griff Marc Soler als erster Fahrer rund 13 Kilometer vor dem Ziel an. Er konnte sich jedoch nicht absetzen und Carlos Verona lancierte einen Konter, wobei er eine kleine Lücke herausfahren konnte. Nachdem der Spanier eingeholt worden war, griff er erneut an, wobei er sich diesmal nicht langfristig lösen konnte. Die entscheidende Attacke erfolgte durch Pablo Castrillo rund zehn Kilometer vor dem Ziel. Der 23-jähirge Spanier fuhr eine kleine Lücke heraus und baute seinen Vorsprung im Anschluss auf eine halbe Minute aus. Er gewann die Etappe mit einem Vorsprung von acht Sekunden vor Max Poole und sorgte somit für den ersten Vuelta a Espana-Etappensieg seiner spanischen Kern Pharma-Mannschaft. zudem war es der erste spanische Tagessieg im Rahmen der 79. Austragung. Platz drei ging an Marc Soler, der einen Rückstand von 16 Sekunden aufwies. Im Hauptfeld, das einen Rückstand von rund sechseinhalb Minuten aufwies, kam es im großteils flachen Schlussanstieg zu keinen nennenswerten Ereignissen.
Ben O’Connor (Decathlon AG2R La Mondiale) verteidigte das Rote Trikot und lag nach wie vor drei Minuten und 16 Sekunden vor Primož Roglič (Red Bull–Bora–Hansgrohe). Dahinter folgte weiterhin Enric Mas (Movistar) mit einem Rückstand von drei Minuten und 58 Sekunden. Carlos Rodríguez (Ineos Grenadiers) verteidigte als Gesamtsechster die Führung in der Nachwuchswertung. Sowohl in der Punkte- als auch in der Bergwertung kam es zu keinen nennenswerten Veränderungen, wobei Wout van Aert (Visma-Lease a Bike) bzw. Adam Yates (UAE Team Emirates) weiterhin die Sonderwertungen anführten. In der Mannschaftswertung behauptete das UAE Team Emirates seine Führung, während der Etappensieger Pablo Castrillo zum aktivsten Fahrer gewählt wurde. Neben dem nicht gestarteten Lennert Van Eetvelt gab auch Kevin Geniets (Groupama-FDJ) die Rundfahrt auf, womit noch 153 Fahrer im Rennen verblieben.[2][3]