PARIS -- Sentimental favorite Roger Federer did not quite follow the script Friday at the French Open. He decided to go for high drama.
Striving to complete a career Grand Slam, Federer came from behind twice in the semifinals to beat big-serving Juan Martin del Potro 3-6, 7-6 (2), 2-6, 6-1, 6-4.
"It feels great coming through tough matches like this," Federer said. "It's more emotional. It's more satisfaction."
Playing in his fourth consecutive Roland Garros final, Federer will try for his 14th major title to match Pete Sampras' record.
"There's still one more step," Federer said.
His opponent Sunday will be No. 23-seeded Robin Soderling of Sweden, who extended his improbable Roland Garros run by beating No. 12 Fernando Gonzalez in another seesaw semifinal, 6-3, 7-5, 5-7, 4-6, 6-4.
With nemesis Rafael Nadal eliminated in the fourth round, Federer faces a less daunting path to that elusive championship. He's 9-0 against Soderling.
But then Federer had swept his previous five matches and 12 sets against del Potro. The 6-foot-6 Argentine rose to the occasion in his first major semifinal and kept on the offensive for much of the match but began to tire in the fourth set.
Federer broke for the first time 2½ hours into the match to lead 3-1.
"The longer the match went, I was always confident with my physical abilities and my mental abilities that I was going to be able to turn it around in a tough situation," Federer said.
Del Potro lost his next two service games as well, allowing Federer to sweep seven games in a row and finally take the lead.
By then, Federer was in top form, gliding across the clay that has vexed him in the past. He won a frantic rally and a standing ovation by lunging to slice a forehand into the open court for a 3-1 lead in the fifth set. There were more highlight-reel shots down the stretch, and he closed the victory with forehand winners on back-to-back points.
Del Potro greeted him at the net with a handshake and a smile.
"I just congratulated him and wished him good luck," del Potro said. "I said everybody wants him to lift the trophy at the end."
Federer trailed for much of the semifinal, struggling to hold serve and unable to break. Sensing his once-a-year opportunity again slipping away, he slapped himself in the face after losing one frantic rally.
Maybe that helped. And maybe he was buoyed by a crowd that kept chanting "Roger! Roger!"
"I hope one day I would be the idol of the crowd the way Roger was today," said del Potro, who had to listen to the fans roar as Federer made shot after shot, slowly getting himself back into the match.
Del Potro made one last charge in the final set, hitting several ferocious shots to break for 3-all. But he missed all eight first serves in the next game and finally dumped a weary second serve into the net on break point.
"I feel so sad," del Potro said. "I really wanted to be in that final, and now I'm going to have to watch it on TV.
"If it had been in the best-of-three sets, I would have won and I would have come out of that court satisfied," he said. "Right now, I don't have enough words to explain what I feel. ... That match escaped me."
On a cool, cloudy evening, Federer looked out of sorts early, failing to convert two early break points and losing serve at 2-all. He twice fell behind 0-40 while serving and shanked an easy overhead, perhaps a sign of nerves.
Federer served better in the second set but was broken when he played a sloppy game to start the third and again found himself trailing a bigger, younger, more powerful opponent.
One point-blank exchange forced Federer to retrieve three del Potro volleys, and he failed to reach a fourth. Federer hung his head, and as he walked back to the baseline he slapped himself.
A game later, del Potro closed the third set, before Federer mounted his latest comeback. He overcame a two-set deficit to beat Tommy Haas in the fourth round.
"It's nice, because I practice for hours and hours and hours, and I don't get tired," Federer said. "To be able to show it also on a match court in a big opportunity like this, it's fantastic."
Federer, though, said he felt bad for del Potro after the match.
"He's a young player. You always think that there aren't that many opportunities, that many chances for younger players," Federer said. "So I was a bit sad for him when I won. I respect him awfully because he [has] made considerable progress, and I'm certain he's going to be a great player in the future."
Next up: Soderling. The Swede scrambled the draw with his win Sunday over four-time defending champion Nadal. Federer has been beaten at the French Open each of the past four years by Nadal, the past three times in the final.
Soderling is beyond the third round for the first time in 22 career major tournaments, and he'll play in his first clay-court tournament final.
"He deserves it," Federer said. "He's still the one who beat Rafa, who was the man to beat in this tournament. ... Obviously it's nice to see someone else for a change in the French Open final."
Against Gonzalez, Soderling let a big lead slip away when he lost his serve in the final game of the third and fourth sets. He fell behind 3-0 and 4-1 in the final set but down the stretch came up with the kind of shotmaking that has carried him through the tournament, and he swept the last five games.
"I had maybe the biggest challenge in tennis right now to beat Nadal here on clay in Paris," he said. "I was still in the tournament, so even though I played a great match, I wanted more. I still feel that way."
The victory over Gonzalez was only his fourth in a five-set match.
"I did a good job of coming back," Gonzalez said. "But Soderling is playing at a really high level. He gets to every ball. I couldn't take him out of position."
The first semifinal had lots of drama -- and a little controversy. Gonzalez challenged a call late in the fourth set, contending a shot by Soderling had landed wide, and when the umpire denied his appeal, Gonzalez sat on the disputed mark in the clay to smooth it out.
"I did something for fun," Gonzalez said. "One point doesn't affect a five-set match."
Gonzalez won the game anyway but played the rest of the match with dirt caked on his shorts.