Marc Hirschi became the first Swiss cyclist to win a Tour de France stage in eight years, taking stage 12 a day before the Tour re-enters the mountains.
Hirschi, who in earlier stages placed second and third, attacked from his leading group of three with 17 miles left on the 135-mile longest day of the three-week Tour. Frenchman Pierre Rolland was second, 47 seconds behind.
Hirschi, 22, is not among the contenders for the overall title. The last Swiss to win a Tour stage was his manager, Fabian Cancellara, who took the prologue in 2012.