Nadal acknowledged his opponent's effort by giving him extended applause as he exited the court and said his win over Schwartzman was his best match of this year's tournament.
The Spaniard will meet world number one Djokovic in two days time with the opportunity to match Roger Federer's record of 20 grand slam titles. Djokovic can win his 18th.
After such a discombobulated season of tennis it's a dream finish to the grand slam calendar, even if Nadal is playing down his chances against a man who is yet to lose a match he wasn't defaulted in this year.
"I'm in a final, I haven't lost a set, although it's true there have been other times at Roland Garros where I have felt better," said Nadal.
"The conditions are not perfect for my style nor for my impact on the ball, so it means a lot to be where I am.
"I know I have to make a step forward. I think I did one today. But for Sunday is not enough. I need to make another one. That's what I'm looking for."
Nadal has defeated Djokovic three times in the Roland Garros final - in 2012, 2014 and 2015 - but believes his previous successes will count for little on Sunday.
"Different circumstances, different kind of tournament and different situation, no?" he said.
"I can't predict the future. The only thing I know is to play against Novak, I need to play my best. Without playing my best tennis, situation is very difficult."
Djokovic was made to work even harder in a 6-3 6-2 5-7 4-6 6-1 win against Stefanos Tsitsipas, in his 38th semifinal from just 62 grand slam appearances.
Tsitsipas staved off a match point in the third set to force a fourth and fifth set but the gap between the golden generation and the new breed - even if the Greek youngster describes himself as an "adult" now - remains clear.
Djokovic took his record to 216-1 after winning the first two sets in a slam match by charging through the fifth to set up his 56th encounter against Nadal.
Djokovic leads the head-to-head count 29-26, but Nadal leads 9-6 in grand slam matches and 6-1 at Roland Garros.