Belgian Greg van Avermaet won stage five of the Tour de France - the first in the mountains this year - to take both the yellow jersey and a big lead over the race favourites.
The 31-year-old was part of an early breakaway and finished strongly to win his second career Tour stage.
Briton Chris Froome is now five minutes and 17 seconds behind Van Avermaet in the general classification.
The defending champion finished in a group alongside rival Nairo Quintana.
Yellow jersey contenders caught out
Van Avermaet is not considered a threat to Froome's hopes of retaining his yellow jersey in Paris on 24 July, but there was a period during the 216km stage where it looked like he might take a worryingly large lead at the top of the general classification.
The BMC Racing rider was part of a nine-rider breakaway early on and the gap to the peloton was 16 minutes at one point.
Only countryman Thomas de Gendt remained with him on the ascent of Col du Perthus, the second category-two climb on the stage, but Van Avermaet powered away to finish the final 17km by himself and win by a margin of two minutes and 34 seconds.
Froome's Team Sky and Movistar, whose overall hopes rest on Quintana, eventually raised the pace, a move that devastated the peloton and saw Peter Sagan - the yellow jersey holder coming into the stage - and this year's Giro d'Italia winner Vincenzo Nibali fall off the back.
Quintana, who has twice finished runner-up to Froome, attempted to catch the 31-year-old Briton off guard in the final moments, but Team Sky responded swiftly to keep their man alongside his main rival.
Fellow Briton Adam Yates, of the Orica team, is level with Froome and Quintana, as well as other general classification contenders such as Fabio Aru, Romain Bardet, Tejay van Garderen and Pierre Rolland.
"We're happy to stay out of trouble," said Froome. "The big general classification days are still to come. This day wasn't going to be a big showdown between the contenders."
Van Avermaet - from winner to team player
Van Avermaet's strengths do not lie in multi-stage events, but rather in the one-day classics, having won Paris-Tours in 2011 and the Tirreno-Adriatico this year.
His BMC Racing team had only held the yellow jersey for four days in their nine-year Tour history previous to this win.
And while Van Avermaet may well retain it for a few days longer, his attention will turn to aiding team-mate Van Garderen's challenge for the title.
"It's special for me. It's the best jersey in the world. It's my first time and perhaps the last so I will enjoy every moment," he said.
"It's the best moment of my career. The main goal for us is having Tejay or Richie Porte on the podium in Paris."
Former winners falter
It was a tough day for two-time champion Alberto Contador and an even more arduous one for 2014 winner Nibali.
Tinkoff's Contador, 33, has been battling against the injuries he suffered in crashes in the first two stages, and the Spaniard looked in discomfort as he crossed the line 33 seconds behind the group of favourites after slipping back late on in the stage.
Astana's Nibali is finding, just as Contador did last year, that winning the Giro and the Tour in the same year is a mammoth task - it has only been achieved 10 times and not since 1998.
The 31-year-old was dropped by the peloton and dragged himself to the finish eight minutes and 28 seconds behind the general classification contenders.
Contador, six and a half minutes behind the yellow jersey holder, will still maintain faint hope of a revival, but Italian Nibali is out of the running.
Stage five result:
1. Greg van Avermaet (Bel/BMC Racing) 5hrs 31mins 36secs
2. Thomas de Gendt (Bel/Lotto) +2mins 34secs
3. Rafal Majka (Pol/Tinkoff) +5mins 4secs
4. Joaquim Rodriguez (Spa/Katusha) same time
5. Daniel Martin (Ire/Etixx-Quick-Step)+5mins 7secs
6. Bartosz Huzarski (Pol/BORA) same time
7. Julian Alaphilippe (Fra/Etixx-Quick-Step)
8. Adam Yates (GB/Orica)
9. Chris Froome (GB/Team Sky)
10. Tejay van Garderen (US/BMC Racing)
General classification after stage five:
1. Greg van Avermaet (Bel/ BMC Racing) 25hrs 34mins 46secs
2. Julian Alaphilippe (Fra/Etixx-Quick-Step) +5mins 11secs
3. Alejandro Valverde (Spa/Movistar) +5mins 13secs
4. Joaquim Rodriguez (Spa/Katusha) +5mins 14secs
5. Chris Froome (GB/Team Sky) +5mins 17secs
6. Warren Barguil (Fra/Giant) same time
7. Nairo Quintana (Col/Movistar)
8. Fabio Aru (Ita/Astana)
9. Pierre Rolland (Fra/Cannondale)
10. Daniel Martin (Ire/Etixx-Quick-Step)