Alpecin-Fenix's Mathieu van der Poel said it was a "super fun day" after he claimed second stage of the Tour de Suisse on Monday as Stefan Kueng held onto the overall lead.
Dutch one-day specialist van der Poel, 26, produced a devastating final burst of speed to leave German Maximilian Schachmann in second and fellow countryman Wout Poels in third in wet conditions on the race used as a warm-up to this month's Tour de France.
"It was a super fun stage, especially with the rainy conditions at the end. It was a bit of a Classics parcours at the end so that suited me really well," van der Poel said.
"The team did a really good job to make the race hard as I asked and I'm really happy to finish it off.
Frenchman Alaphilippe, a contender for the Grand Boucle which starts on June 26, finished in seventh and moved within a whisker of the Swiss Kueng's yellow jersey.
"My goal was to defend it. I was feeling good," Kueng said.
"I'm happy to keep it one more day. A one-second lead is not a lot but I'll give my best and try and defend it again tomorrow," he added.
With 44km to go the breakaway of five riders including Claudio Imhof climbed Oberricken at 905m altitude.
Switzerland's Imhof as well as well as fellow countryman Tom Bohli opened up space to go clear on the decent.
Imhof's lead lasted until the final 9km as the peloton caught up with the 30-year-old to set-up a frantic run-in to Lachen which included a 2.4km climb in heavy rain.
Alaphilippe and Schachmann were among a host of riders in a nine-man group to attempt attacks in the final 5km.
Van der Poel, who will be competing at the mountain bike event at this summer's Olympcic, Wout Poels and Schachmann then broke away to fight the final kilometre.
Van der Poel spotted Schachmann glancing behind him and he powered ahead to claim the win on the greasy surface.
Tuesday's third stage is a 185km run starting from Lachen on Lake Zurich to Pfaffnau with two category climbs.