Portugal's Rui Costa took his second win of this year's Tour de France with a solo victory at Le Grand Bornand on Friday.
Germany's Andreas Kloeden was next over the line, 48 seconds behind Costa and Jan Bakelants of Belgium was third.
Overall leader Chris Froome, who struggled during Thursday's stage up l'Alpe d'Huez, finished safely in the same group as his main challenger Alberto Contador over eight minutes behind the winner, to retain the yellow jersey.
With two stages left, Froome's lead is still 5:11 over Spaniard Contador.
Photograph: Doug Pensinger/Getty Images
Tour de France: Contador crashes going on the attack to Froome
Tour de France: Froome strikes back with a bang
Tour de France: Kittel pips Cavendish to take stage 12
Tour de France: Froome accelerates as Martin wins time trial
Cavendish struggles as Kittel wins Tour de France stage 10