Nadal, a five-time French champion and the world's No.1 player, whose ranking is under threat from Novak Djokovic, hammered fifth seed Robin Soderling 6-4, 6-1, 7-6 (3) to reach a semifinal against Andy Murray.
The struggling Scot, who is playing with a patched-up ankle he rolled last week, scraped out a 7-6 (2), 7-5, 6-2 victory over Juan Chela to line up against Nadal for the second time in six weeks after their Monte Carlo semi.
"It was a fantastic result," said Nadal, who had said 48 hours earlier he had no title chances based on his form. "Today I played well.
"It was for me very positive to win a tiebreak in a tough moment like today. It was positive to have a close end of match. These feelings, the pressure, they help me for the next match."
Since losing to Soderling in the fourth round in 2009 — his only defeat at Roland Garros — Nadal has beaten the Swede three times, twice in Paris.
"Against the No. 1, you never expect anyone to play bad," Soderling said. "To me he played a good match as usual. I think he should be pretty happy with it."
Murray played for nearly three hours against Chela. The fourth seed had few smiles as he ground his way to victory.
"I'm surprised I'm here, to be honest, because I haven't actually played that well," Murray said. "That's a good sign for me, because a few months ago I was not playing well and losing badly."
Li Na and Maria Sharapova set up a women's semi with routine victories. Li, seeded sixth, easily controlled Victoria Azarenka 7-5, 6-2. The seventh-seeded Sharapova stands two victories away from completing a career Grand Slam after outclassing Andrea Petkovic 6-0, 6-3. Tribune news services