Nadal, ranked No. 2, will be shooting for a record seventh French Open title Sunday. A win for Djokovic would complete a personal Grand Slam. It will be his first French Open final.
Djokovic's win over Federer avenged a semifinal loss in the 2011 French Open but the Serb hasn't lost in a Grand Slam event since, winning at Wimbledon and the U.S. Open in 2011 and the Australian Open this year. He beat Nadal in the finals each time.
Djokovic will be coming off two unusual matches for him. He needed to rally from two sets down in the quarterfinals just to get a rematch with Federer in the semifinals.
Federer had a break advantage in the first set but Djokovic came back and posted a 10th-game break to take the set. Federer was up 3-0 and two breaks in the second and again Djokovic had the answer, eventually tying the set at 4-4. Federer broke again but Djokovic refused to let Federer hold serve his next two tries and was up two sets.
The third set was different as Djokovic dropped just five points in serve and claimed the sole break in the sixth game.
Federer ended with 46 unforced errors to 17 for Djokovic.
Nadal was typically amazing in running his record at Roland Garros to 51-1. He's won 32 consecutive matches in the French Open.
Nadal improved to 16-4 lifetime -- the last five all Nadal wins in straight sets on clay -- versus Ferrer in dominant fashion. He had five-game winning streaks in the first and second sets and finished off the match with his seventh break of the day.
Ferrer had two break chances in the fourth game of the match but, after holding, Nadal won 19 of 23 points in putting the set away. Nadal didn't see a break point the rest of the way.