Djokovic defeated fifth-seeded Stefanos Tsitsipas 6-3, 6-2, 5-7, 4-6, 6-1 in their semifinal to reach the final at Roland Garros for the fifth time.
In addition to closing in on a 13th championship at Roland Garros on Sunday, Nadal gets a chance to tie Roger Federer for the men's record of 20 Grand Slam titles. Nadal has defeated Djokovic twice before in the final.
Tsitsipas saved a match point with Djokovic serving at 6-3, 6-2, 5-4 and turned the match around. But Djokovic found a second wind in the deciding set to secure consecutive breaks of serve to lead 4-1. Tsitsipas saved a second match point serving at 1-5, 30-40 when Djokovic returned a forehand into the net. The Serb sealed the win on his third match point after 3 hours, 54 minutes on Court Philippe Chatrier.
"I stayed calm on the surface," Djokovic said, "but deep down, it was a totally different matter."
After the fourth set, Djokovic changed socks and shoes, and Tsitsipas got a medical visit for a check of his left leg.
"I believe my body was not ready,'' Tsitsipas acknowledged afterward. "Physically, I wasn't really there.``
Djokovic came into the match with a 215-1 record when winning the first two sets of a Grand Slam match. Only Jurgen Melzer has defeated him from two sets down, in the 2010 French Open quarterfinals.
Sunday's final between Djokovic and Nadal will be their 56th meeting, the most between two men in the professional era (Djokovic leads 29-26), 16th at a major (Nadal leads 9-6) and eighth at the French Open (Nadal leads 6-1).
"It's his house,'' Djokovic said.
Nadal defeated 12th-seeded Diego Schwartzman 6-3, 6-3, 7-6 (0) on Friday in a semifinal filled with grueling, grinding points.
As has been the case for years, Nadal didn't want to address the idea of pulling even with Federer, saying it's fine for others to talk about such matters, but his focus remains squarely on the task at hand.
"I'm playing the most important tournament of the year -- that's what motivates me," Nadal insisted.
Nadal improved to 99-2 at the French Open, including a combined 25-0 in semifinals and finals, as he seeks a fourth consecutive title in Paris. That would add to the 34-year-old Spaniard's previous streaks of four in a row from 2005 to 2008 and five from 2010 to 2014, to go along with four trophies at the US Open, two at Wimbledon and one at the Australian Open.
He has won all 15 sets he played over the past two weeks, making a mockery of the supposed explanations for why this year, so different for so many reasons, might be different for Nadal in the City of Lights.
One line of thinking involved the shift in dates from May-June to September-October because of the coronavirus pandemic. Another had to do with Nadal's decision to skip the US Open, leaving him with only three matches since tennis resumed in August after its pandemic-forced hiatus.
Yet another involved Schwartzman, a 28-year-old from Argentina: He upset Nadal in straight sets on clay at the Italian Open last month. But that still left their head-to-head ledger at 9-1 in Nadal's favor, and he showed why Friday.
"He improved," Schwartzman said, comparing these past two encounters with Nadal, "and I just played little bit worse."
The late-afternoon sun at Court Philippe Chatrier created awkward shadows over much of the court and blinding brightness at one end, prompting Schwartzman to flip around his backward baseball hat so the brim could shield his eyes.
This was Nadal's 34th Grand Slam semifinal -- and Schwartzman's first. Plus, Schwartzman came in having needed 5 hours, 8 minutes to oust US Open champion and two-time French Open finalist Dominic Thiem in a five-set quarterfinal.
With 5-foot-7 Schwartzman jumping to reach for two-handed backhands in reply to his formidable foe's high-bouncing topspin forehands, Nadal was content as ever to engage in long, energy-sapping exchanges in the early going. The opening game required 14 minutes to complete merely 14 points, six of which lasted at least 10 strokes, with a high of 28, before Nadal held.
"The beginning, in every single match I play against Rafa, it's always, like, 25 minutes and it's 1-all," Schwartzman said with a chuckle. "I expect that."
That established how things would go in that set: 22 of 69 points included double-digit shot counts. And Nadal's 16-6 advantage in total winners in that set made the difference; the numbers were 38-24 by match's end.
He would pressure second serves by standing right at the baseline to receive, much closer than usual, and won the point on each of the first five occasions when Schwartzman began a point with a fault.
Nadal was good at the net too, taking the point on 13 of his 15 trips forward through two sets.
After going up a break in the third, Nadal was a tad shaky, twice getting broken himself as Schwartzman refused to go quietly.
"The best part of the match from me," Schwartzman called the latter half of the final set.
Only 1,000 spectators are being allowed on the grounds daily, owing to the rising COVID-19 cases in France, and the sparse crowd on hand was cheering for Schwartzman late in the third, likely not as much because they were invested in a victory for him as because they wanted to watch more tennis.
A key game came at 5-all in the third, lasting more than 10 minutes and featuring a trio of break points for Schwartzman. Take any of those and he would serve for the set.
But Nadal erased them with aggressive play -- two quick forehand winners and a volley winner off a delayed serve-and-volley net rush.
He further asserted himself in the tiebreaker, leaving fans chanting, "Ra-fa! Ra-fa!" as they have so many times in the past.
"It's important to go through all the process. You have to suffer. You can't pretend to be in a final of Roland Garros without suffering. That's what happened there," Nadal said about the tight third set. "But I found a way, no?"
The Associated Press contributed to this report.