Colombia's Felix Cardenas produced a devastating ascent of the 40km final climb to Sierra Nevada to win the 16th stage of the Tour of Spain on Tuesday.
The Labarca 2 rider caught Juan Miguel Mercado with 600 metres left, to earn his team their second win this season.
Mercado finished second and fellow Spaniard Oscar Sevilla was third.
Race leader Isidro Nozal of Spain retained his hold on the gold jersey although compatriot Roberto Heras cut one minute off his overall lead.
Nozal leads ONCE-Eroski team-mate Igor Gonzalez de Galdeano by a comfortable three minutes and three seconds, but Heras is now just six seconds further behind.
"I had been looking for a win all the way through the mountain stages," said Cardenas.
"I'm now delighted with this victory as it is very important for my career and for the team."
The main field began to up the pace as they began the lengthy final ascent and caught the early breakaway pair Antonio Tauler and Pedro Diaz Lobato, who had at one stage enjoyed a lead of almost eight minutes.
The leading group began to fragment as a series of riders fired off isolated attacks at the front, but it was not until Mercado made his bid for victory that the field really broke apart.
The Ibanesto.com rider looked on course for the stage win, but Cardenas turned on the power as he set off in pursuit and managed to reel him in inside the final kilometre.
Nozal, who is not a noted climber, was shepherded up the slopes to the 2,500-metre high summit of Sierra Nevada by team-mates Gonzalez de Galdeano and Marcos Serrano.
Although he lost time to Heras he was not broken by the ascent and remains favourite to retain his lead until the final stage in Madrid on Sunday.
Stage 16, Jaen to Sierra Nevada
1 Felix Cardenas (Col) Labarca 2 four hours nine minutes 33 seconds
2 Juan Miguel Mercado (Spa) iBanesto.com 5secs behind
3 Oscar Sevilla (Spa) Kelme 18secs behind
4 Alejandro Valverde (Spa) Kelme same time
5 Leonardo Piepoli (Ita) iBanesto.com 21secs behind
6 Txema del Olmo (Spa) Milaneza 31secs behind
7 Unai Osa (Spa) iBanesto.com 58secs behind
8 Roberto Heras (Spa) US Postal Service 1:02 behind
9 Michael Rasmussen (Spa) Rabobank same time
10 Francisco Mancebo (Spa) iBanesto.com 1:11 behind
1 Isidro Nozal (Spa) ONCE 54 hours 13 minutes 10 seconds
2 Igor Gonzalez De Galdeano (Spa) ONCE 3:03 behind
3 Roberto Heras (Spa) US Postal Service 3:09 behind
4 Alejandro Valverde (Spa) Kelme 5:00 behind
5 Manuel Beltran (Spa) US Postal Service 5:16 behind
6 Francisco Mancebo (Spa) iBanesto.com 6:27 behind
7 Michael Rasmussen (Den) Rabobank 7:34 behind
8 Luis Perez (Spa) Cofidis 8:51 behind
9 Unai Osa (Spa) iBanesto.com 9:02 behind
10 Felix Cardenas (Col) Labarca 2 9:28 behind