Team Sky's Chris Froome stayed safely out of trouble to hold on to the overall lead in the Tour of Romandie.
Ramunas Navardauskas of Lithuania, the 25-year-old Garmin Sharp rider, sprinted to his first individual stage win as he took the 190.3km (118-mile) stage in 4hr 51min 49sec.
Enrico Gasparotto of Italy was second for the Astana team, and Wednesday's stage winner, Gianni Meersman of Belgium, was third for Omega Pharma-Quick Step.
Froome retained the lead he has held throughout the six-day race through French-speaking Switzerland, which ends on Sunday. Another Garmin rider, Andrew Talansky of the United States, trails Froome by six seconds.
Friday's stage takes place over 181km, starting and finishing in Payerne with some lower category climbs.