Kazak Alexander Vinokourov leapt up the Tour of Spain rankings thanks to his second successive stage win on Sunday.
Vinokourov also won stage eight
The Astana rider finished 16 seconds ahead of home favourite Alejandro Valverde on stage nine from A Fonsagrada to Alto de la Cobertoria.
Vinokourov is now up to fifth in the rankings, one minute 38 seconds adrift of new race leader Valverde.
Valverde, who rides for the Caisse d'Epargne team, holds a 27-second lead over Astana's Andrey Kashechkin.
Vinokourov attacked with compatriot Kashechkin six kilometres from the summit finish at Alto de la Cobertoria before moving away alone close to the finish.
After overnight leader Janez Brajkovic was dropped, Valverde accelerated to catch and pass Kashechkin, who finished third in the stage.
"I saw I couldn't catch Vinokourov, so I went for the overall lead instead," said Valverde, to take the overall lead in the Tour of Spain for the first time in his career.
Monday is the race's first rest day. The race ends in Madrid on 17 September.
Stage nine result:
1 Alexandre Vinokourov (Kazakhstan/Astana) 5hrs 50mins 43secs
2 Alejandro Valverde (Spain/Caisse d'Epargne) at 16secs
3 Andrey Kashechkin (Kazakhstan/Astana) at 21secs
4 Carlos Sastre (Spain/CSC) at 43secs
5 Jose Angel Gomez Marchante (Spain/Saunier)
6 Danilo Di Luca (Italy/Liquigas) at same time
7 Manuel Beltran (Spain/Discovery Channel) at 1min 46secs
8 Leonardo Piepoli (Italy/Saunier) at same time
9 Samuel Sanchez (Spain/Euskaltel) at 1min 59secs
10 Stijn Devolder (Belgium/Discovery Channel) at 2mins 14secs
68 David Millar (GB/Saunier) at 21mins 8secs
1 Alejandro Valverde (Spain/Caisse d'Epargne) 36hrs 41mins 31secs
2 Andrey Kashechkin (Kazakhstan/Astana) at 27secs
3 Carlos Sastre (Spain/CSC) at 44secs
4 Jose Angel Gomez Marchante (Spain/Saunier) at 56secs
5 Alexandre Vinokourov (Kazakhstan/Astana) at 1min 38secs
6 Janez Brajkovic (Slovenia/Discovery Channel) at 2mins 5secs
7 Danilo Di Luca (Italy/Liquigas) at 2mins 21secs
8 Manuel Beltran (Spain/Discovery Channel) at 2mins 28secs
9 Ruggero Marzoli (Italy/Lampre) at 3mins 59secs
10 Sylvester Szmyd (Poland/Lampre) at 5mins 18secs
56 David Millar (GB/Saunier) at 37mins 31secs