Novak Djokovic will take on Dominic Thiem for the third time in four years at the French Open, after both eased through to the semi-finals on Friday (NZT).
World number one Djokovic progressed to the last four at Roland Garros with a 7-5 6-2 6-2 victory over fifth seed Alexander Zverev, while Thiem defeated Karen Khachanov 6-2 6-4 6-2 to reach the final four.
Djokovic and Thiem faced each other in the semi-finals in 2016, with the Serbian winning easily, but Thiem turned the tables the following year in the quarter-finals, before reaching his first Grand Slam final at the Open last year.
With Rafael Nadal taking on Roger Federer in the other semi-final, the top four seeds are all through to the last four.
Remarkably, this is the first Grand Slam since the 2012 French Open that Djokovic, Federer and Nadal have all made it through to the semis.
Djokovic has moved to within two victories of holding all four titles at the majors at the same time for the second time in his career, by defeating his German opponent Zverev in just over two hours.
Despite sending a flurry of mighty serves crashing down, towering world number five Zverev could offer only momentary resistance to the 32-year-old top seed.
The 1.98m German had served for the opening set at 5-4, before Djokovic simply clicked it up a notch to steal that set 7-5, then romp through the next two 6-2 6-2.
"He was serving very well, it was a big challenge for me to find the right returning position," Djokovic said, after reaching his ninth semi-final in the French capital.
"I was 4-5 down, then I played five or six games perfectly, hitting clean balls. It was very windy, but it felt good to play [after play was washed out on Thursday NZT]."
Meanwhile, fourth-seeded Austrian Thiem had to battle his way through the first week in Paris, but has found his best form in the last two rounds and was far too strong for 10th seed Khachanov.
Thiem was never seriously troubled, as he won in 1h 47m with a service winner on first match point.
AAP