Andre Greipel denied Britain's Mark Cavendish in a thrilling sprint finish to win stage 10 of the Tour de France, a 158km run from Aurillac to Carmaux.
Greipel took advtantage of Cavendish's early sprint to win in three hours 31 minutes 21 seconds.
It was the first time Cavendish has been beaten by his former HTC teammate in a head-to-head sprint.
Thomas Voeckler retained his race leader's yellow jersey, one minute 49 seconds ahead of Luis Leon Sanchez.
Cavendish, who won stages five and seven last week, found an excellent position coming into the final tight turns of the stage but his normal lead-out man Mark Renshaw, had failed to stay with the lead group, forcing Cavendish to go earlier than usual.
Greipel, who left HTC in acrimonious fashion last year, surged into contention in the final 20 metres to win his first Tour stage.
"It's the moment I've been waiting for all year," said Greipel, who rides for the Omega Pharma-Lotto team. "It's the most beautiful race in the world and the most famous. To win here is sensational."
Commenting on his arch-rival Cavendish he added: "He's the best sprinter on the Tour de France, and to be able to beat him is a big moment for me."
A gracious Cavendish said on Twitter: "Well, that's me beaten. Went with 250m to go, but didn't 'kick' until 200m. Greipel rode it perfect and got speed by running up on me - hats off.
"At least we're making up ground for the green jersey. Maybe the intermediate sprints are dampening my kick, but I'd love to wear it in Paris."
The day began with a shower of hailstones at the start in Aurillac and 178 riders began the stage, with 20 having retired since the start on 2 July in the Vendee.
There was a minor crash in the peloton after 11km before six riders - Marco Marcato, Arthur Vichot, Sebastien Minard, Anthony Delaplace, Julien El Fares and Remy Di Gregorio - formed the day's breakaway after 16km.
That was reduced to Vichot, Minard and Marcato at the base of a short 4.1km ride up Cote de Villefranche-de-Rouergue, and with around 17km of the stage remaining only Marcato had not been passed by the peloton.
Marcato's lead did not last much longer as a new group of five, featuring the yellow jersey of Voeckler and green shirt of Philippe Gilbert, surged ahead in the final 10km.
Gilbert, the winner of the Tour's opening stage, then accelerated in search of a spectacular solo triumph but had far too much road left ahead of him and was soon swallowed up, although surprisingly it was not Cavendish who prevailed.
The 26-year-old has another chance to claim the 18th stage win of his career on Wednesday, however, with the 167.5km 11th stage from Blaye-les-Mines to Lavaur again expected to favour the sprinters.
STAGE 10 RESULT:
1. Andre Greipel (Ger/Omega Pharma-Lotto) 3hrs 31mins 21secs
2. Mark Cavendish (GB/HTC - Highroad) same time
3. Jose Joaquin Rojas (Sp/Movistar)
4. Thor Hushovd (Nor/Garmin)
5. Romain Feillu (Fr/Vacansoleil)
6. Daniel Oss (It/Liquigas)
7. Sebastien Hinault (Fr/AG2R)
8. Borut Bozic (Slv/Vacansoleil)
9. Geraint Thomas (GB/Team Sky)
10. Samuel Dumoulin (Fr/Cofidis)
1. Thomas Voeckler (Fr/Europcar) 42hrs 06mins 32secs
2. Luis Leon Sanchez (Sp/Rabobank) +1:49"
3. Cadel Evans (Aus/BMC Racing) +2:26"
4. Fraenk Schleck (Lux/Leopard) +2:29"
5. Andy Schleck (Lux/Leopard) +2:37"
6. Tony Martin (Ger/HTC - Highroad) +2:38"
7. Peter Velits (Slv/HTC - Highroad) +2:38"
8. Andreas Kloeden (Ger/RadioShack) +2:43"
9. Philippe Gilbert (Bel/Omega Pharma - Lotto) +2:55"
10. Jakob Fuglsang (Den/Leopard) +3:08"