Kwiatkowski i Valverde stoczyli zacięty pojedynek na Caminito del Rey niczym na klasykach w Ardenach. Ta dwójka odskoczyła rywalom na 300 metrów przed metą, minęła atakującego wcześniej Laurensa de Plus (Quick-Step Floors) i między sobą rozstrzygnęła losy etapu. Na ostatnich 30 metrach lepszy był Valverde, który zameldował się na mecie o długość roweru przed Polakiem. Kwiatkowski objął jednak prowadzenie w klasyfikacji generalnej, jako że dotychczasowy lider, Rohan Dennis (BMC Racing Team), odpadł z peletonu na kilkanaście kilometrów przed metą.
Etap z Marbelli do Caminito del Rey (163,5km) był bardzo spokojny, aż do ostatnich 30 kilometrów. Wtedy to przewaga siódemki uciekinierów zaczęła spadać, peleton zaczął się naciągać i faworyci przesuwali się do przodu.
Co więcej, na 15 kilometrów przed metą, tuż po tym, jak peleton doścignął ostatniego z harcowników – Pierra Rollanda (EF Education First-Drapac p/b Cannondale) – z peletonu odpadł lider wyścigu, Rohan Dennis (BMC Racing Team), co od razu wykorzystali kolarze Team Sky, podkręcając tempo w zasadniczej grupie. Także kolarze Movistar ustawili się z przodu peletonu przed finałowym podjazdem – Caminito del Rey. Tempo było zbyt wysokie między innymi dla Vincenzo Nibalego (Bahrain-Merida).
Na podjeździe Kwiatkowski jechał bardzo wysoko, dzięki czemu mógł kontrolować ataki rywali, ale dopiero atak Valverde zmusił Polaka do pogoni. Ta dwójka szybko minęła De Plusa i do mety toczyli dwójkowy pojedynek, z którego lepszy był Hiszpan, odnoszący swoje 10. w karierze zwycięstwo w hiszpańskiej Vuelcie.
20. na mecie zameldował się Rafał Majka (Bora-hansgrohe), który stracił do zwycięzcy 8 sekund.
W klasyfikacji generalnej Kwiatkowski, który do tej pory był drugi, teraz wyprzedza Valverde o 14 sekund i Wilco Keldermana (LottoNL-Jumbo) o 25 sekund. Majka jest 14.
Wyniki 2. etapu:
1 Alejandro Valverde (Spa) Movistar Team 4:13:01
2 Michał Kwiatkowski (Pol) Team Sky
3 Laurens De Plus (Bel) Quick-Step Floors 0:00:03
4 Wilco Kelderman (Ned) Team Sunweb
5 George Bennett (NZl) LottoNL-Jumbo
6 Tony Gallopin (Fra) AG2R La Mondiale
7 Emanuel Buchmann (Ger) Bora-Hansgrohe
8 Rigoberto Uran (Col) EF Education First-Drapac p/b Cannondale
9 Nairo Quintana (Col) Movistar Team
10 Thibaut Pinot (Fra) Groupama-FDJ
Klasyfikacja generalna po 2. etapie:
1 Michał Kwiatkowski (Pol) Team Sky 4:22:40
2 Alejandro Valverde (Spa) Movistar Team 0:00:14
3 Wilco Kelderman (Ned) Team Sunweb 0:00:25
4 Laurens De Plus (Bel) Quick-Step Floors 0:00:28
5 Ion Izagirre (Spa) Bahrain-Merida 0:00:30
6 Fabio Felline (Ita) Trek-Segafredo
7 Emanuel Buchmann (Ger) Bora-Hansgrohe 0:00:32
8 Tony Gallopin (Fra) AG2R La Mondiale 0:00:33
9 Nairo Quintana (Col) Movistar Team
10 Bauke Mollema (Ned) Trek-Segafredo 0:00:35