Schwarzenburg - Luxembourg's Frank Schleck of the Saxo Bank team won Monday's 196.6km third stage of the Tour of Switzerland from Sierre to Schwarzenburg.
German's Tony Martin (HTC-Columbia) took over the yellow jersey as overnight leader Fabian Cancellara, also of the Saxo Bank team and looking for a good performance in his home canton, was dropped on the tough last climb into Schwarzenburg.
Schleck, 30, who came fifth in last year's Tour de France, made his break on that last ascent before a flat final kilometre to the line, holding off the challenge of Colombia's Rigoberto Uran (Caisse d'Epargne) who finished in the same time.
"I felt bad all over... I attacked 300 metres from the summit and that felt like the longest kilometre of my life," said Schleck.
"It makes me happy to win a stage here."
Saxo Bank sports director Kim Andersen was thrilled by the way Schleck came through.
"Frank Schleck has been in great shape throughout the spring and now the results really start coming," he said.
"It was an amazing solo victory in a peloton loaded with strong riders getting ready for the Tour de France and today's finale was very similar to the one he won at the Tour of Luxembourg."
Bauke Mollema (Rabobank) of the Netherlands was three seconds back in third, along with Martin.
Cancellara finished seven seconds behind his team-mate in a group that also included RadioShack's Lance Armstrong, using the race as his final preparation as he bids for an eighth Tour de France victory.
Martin has a one-second lead over Cancellara in the overall standings. Sweden's Thomas Lovkvist of Team Sky is third, nine seconds back.
"My original aim here was to build up for the Tour de France but now I'll be defending this lead," said Martin.
"The Tour of Switzerland is a very prestigious race and I'll work 100 percent to fight for it. I would say Thursday's stage, which is the most mountainous of all, will be really decisive."
Slovakian rider Peter Sagan (Liquigas), however, did not line up for the start of the stage.
His team said that the 20-year-old was suffering from "severe fatigue" after a demanding start to the season that saw him win two stages on each of the Tour of California and the Paris-Nice as well as one on the Tour of Romania.
Tuesday's fourth stage takes the riders the 192km from Schwarzenburg to Wettingen. The race ends in Liestal on Sunday.
Results from the third stage of the Tour of Switzerland on Monday, a 196.6km ride from Sierre to Schwarzenburg:
Stage 3 results:
1. Frank Schleck (LUX/SAX) 5hr 02min 21sec
2. Rigoberto Uran (COL/GCE) same time
3. Bauke Mollema (NED/RAB) at 03sec
4. Steve Morabito (SUI/BMC) s.t.
5. Matteo Carrara (ITA/VAC) s.t.
6. Juan Manuel Garate (ESP/RAB) s.t.
7. Robert Gesink (NED/RAB) s.t.
8. Thomas Lovkvist (SWE/SKY) s.t.
9. Nicolas Roche (EIR/ALM) s.t.
10. Tony Martin (GER/THR) s.t.
General classification
1. Tony Martin (GER/THR) 9hr 38min 04sec
2. Fabian Cancellara (SUI/SAX) 1
3. Thomas Lovkvist (SWE/SKY) 9
4. Rigoberto Uran (COL/GCE) 10
5. Dries Devenyns (BEL/QST) 11
6. Frank Schleck (LUX/SAX) 13
7. Jakob Diemer Fuglsang (DEN/SAX) 14
8. Steve Morabito (SUI/BMC) s.t.
9. Jonathan Castroviejo (ESP/EUS) 15
10. Bauke Mollema (NED/RAB) 17
Selected: 21. Lance Armstrong (USA/RSH) 30