World champion Thor Hushovd won the 13th stage of the Tour de France after a thrilling finish to the 152.5km trek from Pau to Lourdes.
The Norwegian overtook long-time leader Jeremy Roy of France in the final two kilometres to secure his first stage win of this year's Tour.
Another Frenchman, David Moncoutie, came second with Roy finishing third.
Home rider Thomas Voeckler finished in the peloton, more than seven minutes behind, but retained the yellow jersey.
"I really didn't think I would win this stage," said Hushovd, who took the race lead when helping his Garmin team win stage two's team time trial and held it for a week.
"I did things right tactically. It's true that I descend very well. I knew I had to. It was super."
For the second day in a row, FDJ rider Roy was in the thick of the action during a stage which included the hors categorie ascent of the imposing Col d'Aubisque.
The Frenchman was part of a 10-man breakaway group which pulled clear after the day's first climb - the category-three Cote de Cuqueron.
At the foot of the Col d'Aubisque Hushovd went clear, but Roy counter-attacked and caught the Norwegian before passing him with 50km to go.
Roy had a nervous moment when a fan got too close and brushed him with a flag, forcing him to swerve, but he still looked set for his maiden Tour de France victory and the first for a Frenchman in this year's Tour.
Hushovd had other ideas though and worked with Moncoutie to reel Roy back in before launching a solo attack to pick up the ninth stage win of his career.
"The disappointment is too big, it will be hard to take in," said Roy. "It's too hard for me. Only victory counts."
Yellow jersey holder Voeckler, who assumed the lead from Hushovd on the ninth stage, retained his lead of one minute and 49secs in the general classification.
Other leading contenders, including defending champion Alberto Contador of Spain and two-time runners-up Andy Schleck and Cadel Evans, could not take any time off each other as they conserved energy for Saturday.
Isle of Man rider Mark Cavendish retained the green jersey after finishing 129th overall, more than 22 minutes adrift, but saw his lead trimmed to 13 points.
STAGE 13 RESULT:
1. Thor Hushovd (Norway / Garmin) 3hrs 47mins 36secs
2. David Moncoutie (France / Cofidis) +10"
3. Jeremy Roy (France / FDJ) +26"
4. Lars Bak (Denmark / HTC - Highroad) +5:00"
5. Jerome Pineau (France / Quick-Step) +5:02"
6. Edvald Boasson Hagen (Norway / Team Sky) +5:03"
7. Vladimir Gusev (Russia / Katusha) +5:08"
8. Alessandro Petacchi (Italy / Lampre) +5:16"
9. Maarten Tjallingii (Netherlands / Rabobank) same time
10. Philippe Gilbert (Belgium / Omega Pharma - Lotto) +6:48"
1. Thomas Voeckler (France / Europcar) 55hrs 49mins 57secs
2. Fraenk Schleck (Luxembourg / Leopard) +1:49"
3. Cadel Evans (Australia / BMC Racing) +2:06"
4. Andy Schleck (Luxembourg / Leopard) +2:17"
5. Ivan Basso (Italy / Liquigas) +3:16"
6. Damiano Cunego (Italy / Lampre) +3:22"
7. Alberto Contador (Spain / Saxo Bank) +4:00"
8. Samuel Sanchez (Spain / Euskaltel) +4:11"
9. Philippe Gilbert (Belgium / Omega Pharma - Lotto) +4:35"
10. Tom Danielson (U.S. / Garmin) same time