Defending champion Nadal powered past Federer on Friday, to move within one victory of a record-extending 12th Roland Garros title after handing his oldest rival his worst Grand Slam defeat in 11 years.
The 33-year-old produced a masterful performance to get past Federer 6-3, 6-4, 6-2 in the last four on Court Philippe Chatrier and set up a final clash with either world number one Novak Djokovic or Austrian fourth seed Dominic Thiem on Sunday.
It will be Nadal's 12th appearance in the championship match, which he has never lost before.
"It's incredible to play with Roger here," said Nadal.
"Congratulations to him -- to be at his level at 37, it's incredible. I say thank you to the Parisian fans, because it's magnificent for me to be in another final.
"It's always a pleasure to play with him. It's always a difficult match against him."
The third seed now has an stunning 92-2 win-loss record on the Paris clay, having beaten Federer for the sixth time in as many French Open meetings despite difficult, windy conditions.
Nadal also leads his overall head-to-head against Federer 24-15, and 14-2 on clay after ending a run of five straights losses to the 37-year-old.
A tally of just nine games meant it was Federer's heaviest defeat in a Grand Slam match since managing only four against Nadal in their famously one-sided 2008 Roland Garros final.
Nadal made only 19 unforced errors, crushing 33 winners as Federer struck 25, although that amount could easily have been doubled against any opponent other than the 11-time champion.
The defeat leaves Federer still waiting for a first victory over Nadal on clay since 2009 in Madrid.
A topsy-turvy start saw the Spaniard race through the first three games before Federer broke back as the wind played havoc with the players' serves from one end.
But Nadal grabbed a 4-2 advantage in a marathon sixth game as Federer, looking to become the oldest Grand Slam finalist since Ken Rosewall at the 1974 US Open, dumped a forehand into the net.
The crowd were roaring on Federer as he saved a set point, but gasped in appreciation of a rasping Nadal backhand winner which clinched the opening set.
The Swiss turned on the style to take the first two games of the second set, only to be broken straight back as Nadal curled a trademark forehand up the line.
Federer was throwing everything he had at Nadal, but the indomitable left-hander was simply too strong.
The key moments came towards the end of the second set, when second seed Nadal managed to hold under severe pressure to level at 4-4, before putting the pedal down to break despite having trailed 40-0.
The defending champion confidently served out the set to love to move one step closer to the final, where he will look to lift the trophy for a third successive year.
Federer's chances were slipping away quickly, and he received a warning after angrily hitting the ball into the upper reaches of Philippe Chatrier after a flick off the net chord helped Nadal break in game three of the third set.
Another break in Federer's next service game effectively signalled the end of the contest, and Nadal wrapped up an impressive victory as his rival fired a return long.