Katusha's Alexander Kristoff outsprinted double stage winner Peter Sagan to claim the seventh stage of the Tour de Suisse in Düdingen.
The Norwegian opened his sprint early on the finishing straight, which ramped up slightly towards the end - a move which Sagan could not quite counter.
It marks Kristoff's 17th win of an impressive season, meaning he denied Sagan a record-breaking 12th Tour de Suisse stage.
The day's breakaway saw the presence of the rainbow jersey of Michal Kwiatkowski, joined by Orica-GreenEdge's Daryl Impey and BMC's Silvan Dillier.
The trio stayed away until the final two kilometres when Impey and Dillier cut their losses, but Kwiatkowski dug deep to hold off the charging peloton for another few hundred metres.
Sagan's Tinkoff-Saxo team led the bunch around the final corner into the finishing straight, but it was Kristoff who had the better positioning.
The Katusha rider sprung past Sagan's leadout man and towards the line, with the Slovakian unable to bridge the gap in the final metres.
Tour de Suisse 2015 stage seven: Biel/Bienne - Dudingen (164.4km)
1. Alexander Kristoff (Nor) Katusha, 3-38-07
2. Peter Sagan (Svk) Tinkoff-Saxo, st
3. Davide Cimolai (Ita) Lampre-Merida, st
4. Greg Van Avermaet (Bel) BMC, st
5. Arnaud Demare (Fra) FDJ, st
6. Jurgen Roelandts (Bel) Lotto-Soudal, st
7. Sep Vanmarcke (Ned) LottoNL-Jumbo, st
8. Michael Albasini (Swi) Orica-GreenEdge, st
9. Marco Marcato (Ita) Wanty-Groupe Gobert, st
10. JJ Rojas (Esp) Movistar, st
14. Geraint Thomas (GBr) Team Sky, at 2 seconds
Overall classification after stage seven
1. Thibaut Pinot (Fra) FDJ, 17-42-07
2. Geraint Thomas (GBr) Team Sky, at 37s
3. Domenico Pozzovivo (Ita) Ag2r-La Mondiale, at 50 seconds
4. Simon Spilak (Slo) Katusha, st
5. Miguel Angel Lopez (Esp) Astana, at 1-07
6. Jakob Fuglsang (Den) Astana, at 1-22
7. Tom Dumoulin (Ned) Giant-Alpecin, at 1-27
8. Steve Morabito (Swi) FDJ, at 2-29
9. Sebastian Reichenback (Swi) IAM Cycling, at 2-43
10. Sergio Henao (Col) Team Sky, at 2-46
Tour de France 2015 route preview
Thank you for reading 20 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1