Paris: 6-3, 6-2, 6-7(5), 7-5 in a three-hour-28-minute quarter-final here at the Roland Garros late on Wednesday night.
Djokovic overcame a cut in his left hand that saw his racquet dripping with blood immediately after the crowd had been cleared from the stands in the fourth set due to 11pm night curfew in Paris.
Even though Djokovic won the first set with a scoreline that suggested the game was one-sided, it took him 52 minutes to seal it.
Berrettini fired 11 aces to Djokovic’s 10 during the match but fell short of the Serb on other yardsticks.
The Italian failed to convert any of the three break-points he got while the 2016 French Open champion converted four of the nine break points he got.
The Serb won 77 percent of his first serve points against Berrettini’s 71 percent and won 67 percent of second serve points against 45 percent by Berrettini.
Djokovic, who became only the second player after Roger Federer (46) to reach Grand Slam semi-finals on 40 occasions with Wednesday night’s win, needed a few games to get into rhythm against the Italian who enjoyed an extra rest day after a walkover against Federer.
Berrettini got three chances to break Djokovic in the first four games, but the Serb held on to win the first two sets. Berrettini came back by winning the third set in tie-breaker. He stretched his rival in the fourth set before the Serb sealed it and the match 7-5.
Djokovic and Nadal’s semi-final clash will be a rematch of last year’s final and while Djokovic leads Nadal 29-28 in head-to-head, the Spaniard world No. 3 is better on clay with 19-7 record.