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.
The second semi-final was suspended until Saturday due to rain, with Thiem leading 6-2, 3-6, 6-1 as he looks to reach a second straight Roland Garros final.
The decision to end play drew extra ire towards the tournament organisers, after they had been labelled a “disgrace” for moving the women's semi-finals away from the showpiece Chatrier court.
It will be Nadal’s 12th appearance in the championship match, which he has never lost before.
“In front (of me was) probably my biggest rival in my career with all the story that we shared together,” said Nadal. “So that always makes the match a little bit more special and unique.”
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.
“This court can be windy, can be difficult,” added Nadal. “Today was a little bit too much.”
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.
He could also move to within two of Federer on the all-time Grand Slam title winners' list with an 18th major on Sunday.
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 10 years ago in Madrid.
It was 2009 champion Federer's first French Open campaign since 2015, after skipping the clay-court season for two years in order to be better prepared for Wimbledon.
“I think I surprised myself maybe how deep I got in this tournament and how well I actually was able to play throughout,” he said.
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.
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.
Federer’s chances were slipping away quickly, and he received a warning after angrily hitting the ball into the upper reaches of Philippe Chatrier as Nadal romped to victory.
Thiem, Djokovic held up by rain
Thiem would have been the happier of the two to resume playing on Friday, leading by a break in the third set after sharing the opening two with Djokovic.
The pair will instead restart their match at 1000 GMT (5pm Phuket time) on Saturday, before the women’s final between Czech teenager Marketa Vondrousova and Australian eighth seed Ashleigh Barty.
The skies brightened almost immediately after play was ended for the day at 1645 GMT (18:45 local), and at least another two hours of play could have been accommodated.
“I believe that we have hit rock bottom but the good thing is that the only way now is up,” said former women’s world number one Amelie Mauresmo.
Top seed Djokovic had been increasingly frustrated with the conditions on court with high winds kicking up the clay.
He even summoned the tour supervisor at one stage to complain about the severity of the conditions.
Tournament organisers said that fans holding tickets for the semi-final will be fully refunded as they will not be valid for Saturday.