Alexander Zverev moved to within touching distance of a long-coveted maiden Grand Slam title, as the German fought past 26th seed Jakub Mensik 7-5 6-2 3‑6 6-3 on Friday to reach the French Open final.
The 29-year-old, who has lost three major finals, including one at Roland Garros two years ago, has been sharp throughout in Paris this time.
He faces 10th seed Flavio Cobolli whose semi-final opponent Matteo Arnaldi, a fellow Italian, withdrew from the match because of a virus.
"I knew that it would be my toughest challenge. I managed it and I won, so I'm happy," said Zverev, who became only the fifth active player to reach multiple Roland Garros title clashes.
"It's amazing the way he (Mensik) played these last two weeks, he beat so many unbelievable players. He started playing amazing in the third set, stepping up his level, but this is a Grand Slam with best-of-five-set matches.
"Things happen and your opponents will play better. You have to deal with it. I hope to play another great match on Sunday."
A tight opening set on a sun-kissed Court Philippe Chatrier tilted Zverev's way when he struck a backhand crosscourt winner in the 11th game to bring up a break point, and he nudged ahead with a delicate shot that Mensik sent into the net.
The world number three sent down a powerful ace to pocket the first set and asserted himself with an early break at the start of the second set, as the 20-year-old Mensik's level briefly dipped in his maiden Grand Slam semi-final.
Mensik sat with a towel over his head during a changeover and his troubles deepened after the restart, when Zverev took his game up a few notches and sealed a double break, before comfortably doubling his lead in the match.
After a long medical timeout for a neck issue, Czech Mensik mixed his booming serve with deft drop shots to break for a 4-2 lead en route to winning the third set, but Zverev powered through the next with no drama to prevail.
As the dust settled on the absorbing clash, French Open organisers said Cobolli would go through to his first major title clash after Arnaldi withdrew with a virus.
"It's not what I wanted to do," Arnaldi told reporters. "Last night I started to feel unwell and then at dinner I started to feel so-so in my stomach and I woke up at 1 am and started vomiting.
"It made no sense for me to play, out of respect for him. It would not have been a good match."
Cobolli said Arnaldi's pullout had also left him emotional.
"It was tough for me," Cobolli added. "When he came to me (with the news) an hour ago, I almost cried. I have a lot of respect for him and he's an inspiration for a lot of us."

Iran World Cup players granted visas to enter US, says White House official
Ferrari mark their intent in Monaco practice runs
Robinson helps put England on top in first test against New Zealand
Hero Dubai Desert Classic secures GEO Certified status for 4th year running
Las Vegas signs 10-year extension for Formula 1 race
