Novak Djokovic continued his quest for a standalone record 25th Grand Slam title by swatting aside third seed Alexander Zverev to reach the French Open semi-finals.
The 38-year-old sixth seed won 4-6 6-3 6-2 6-4 to set up a meeting with world number one Jannik Sinner on Friday.
Djokovic, who has three Roland Garros titles, lost the opening set to 2024 runner-up Zverev after being broken in the first game of the match.
But the Serb great did not drop serve again, although he had to survive a 41-shot exchange on break point at 3-2 in the fourth set on his way to sealing a record-extending 51st Grand Slam semi-final appearance.
"My way of playing is based on running, but at my age it's not so easy to run so much," said Djokovic, who is the second oldest man to reach the French Open semi-finals.
There he will face Sinner, who cruised into the last four with a ruthless straight-set victory over Kazakhstan's Alexander Bublik earlier on Thursday.
The Italian is still yet to drop a set at Roland Garros after winning 6-1 7-5 6-0 and bringing 62nd-ranked Bublik's remarkable run to an end.
Sinner is hunting a first title on the Paris clay after previously only gone as far as the semis, losing a five-set thriller to Spain's Carlos Alcaraz last year.
Djokovic or Sinner will meet the winner of defending champion Alcaraz and Italian eighth seed Lorenzo Musetti, who also play on Friday.
Djokovic shows Grand Slam desire remains strong
While age is clearly catching up on Djokovic, his insatiable appetite for Grand Slam success shows no signs of slowing down.
A patchy season by his lofty standards has led to questions about his stamina and motivation, while the departure of rival-turned-coach Andy Murray from his team also indicated things were not functioning as he hoped.
But when the major tournaments come around, Djokovic is always still primed to challenge in the latter stages.
In Melbourne, he defied the odds to beat Alcaraz and reach the semi-finals, although the physical exertions led to a hamstring tear which meant he had to retire injured against Zverev in the last-four encounter.
Nevertheless, it showed he still had the desire and capability to beat the younger generation over the five-set format.
"I think the win against Alcaraz and against Zverev tonight proves to myself and others that I can still play at the highest level," Djokovic said.
"I just thrive on these occasions. This is where I lock in and really give my best."
Zverev, 28, was once part of the first crop expected to replace Djokovic, Murray, Rafael Nadal and Roger Federer.
This defeat was another illustration of how the German is often unable to problem-solve against Djokovic, who won four of his eight break points.
Often accused of being too passive, Zverev was rooted deep behind the baseline for much of the contest and paid the price as Djokovic took control with his craftmanship.
With belief or focus rarely wavering, the Serb started dictating the patterns of play and used the drop shot effectively to unsettle Zverev.
When the three-time Grand Slam runner-up finally thought his chance of a comeback had arrived midway through the fourth set, he was denied in arguably the point of the tournament.
Djokovic showed all his elasticity and endurance to stop Zverev putting the set back on serve.
It enabled Djokovic to serve out victory after three hours and 17 minutes as another deft drop shot, fittingly, caught out Zverev again.
Sinner marches on in commanding fashion

Sinner is aiming for a first title at Roland Garros to add to his US Open and two Australian Open titles
The manner in which Sinner continues to tear his way through the draw - in only his second tournament back from a three-month ban for failing two doping tests - is an ominous sign for his rivals.
The 23-year-old world number one has been the dominant player on the ATP Tour over the past 18 months and, after reaching the Rome final last month, has simply carried on from where he left off.
Victory over Bublik extended Sinner's winning run at the majors to 19 matches after triumphs at last year's US Open and the Australian Open in January.
The Italian, who won the first of his three majors in Melbourne last year, needed only one hour and 51 minutes to dismantle the unorthodox Bublik.
After what he described as a "disgraceful" period in his career, Bublik's surprise run at the French Open - in which he became the first Kazakh to reach a Grand Slam quarter-final - has seen him return to the top 50 in the rankings.
Refreshed from a recent trip to Las Vegas which proved to be a turning point in his form, Bublik has enjoyed his best run at Roland Garros and said his fourth-round win over British number one Jack Draper was the "best moment of my life".
But a match against the world number one proved a bridge too far.
"We have faced each other a few times so I know him quite well, but with him [Bublik] you never know what's happening," said Sinner.
"He deserves to be in the quarter-finals, he beat very tough players. I tried to stay focused on my side and play as solidly as possible because he can have ups and downs so I tried to stay consistent."
BBC