Alexander Zverev battled his way back into the French Open semi-finals a year after suffering a season-ending ankle injury.
The German left Philippe Chatrier in a wheelchair 12 months ago after being forced to retire during a compelling last-four clash with Rafael Nadal.
Zverev had struggled since returning to the tour in January but has buried his demons on the Parisian clay and fought for three hours and 22 minutes to make it past surprise package Tomas Etcheverry 6-4 3-6 6-3 6-4.
“That was the most difficult year of my life,” he said.
“I love tennis with all my heart. I’m so happy to be back at this stage, I’m so happy to be able to play for a Roland Garros final again. I can’t be happier.”
Argentinian Etcheverry, 23, did himself huge credit in the biggest match of his career, wowing the Philippe Chatrier crowd with thumping winners and fighting to the end.
But it was Zverev who was just the stronger in the big moments, saving six of the nine break points he faced to make it to the last four here for the third year in a row.
Zverev said of his opponent: “He’s playing incredible tennis, he reminds me a lot of (Juan Martin) Del Potro, the way he hits his forehand especially. If he continues playing like this he’s going in the quarter-finals here a lot more often for sure and I think he can be top 10.
“I just had to remember that I have a pair of balls that I can use. I hope, I think I deserved to win. I’m just happy to be through.”
In the last four, Zverev will meet last year’s runner-up Casper Ruud, who quelled a Holger Rune fightback to win 6-1 6-2 3-6 6-3.
This was a rematch of a night-session clash last year that descended into acrimony, with Rune accusing his fellow Scandinavian of celebrating in his face, a claim the Norwegian denied.
Rune ended a four-match losing streak against Ruud in Rome last month and the 20-year-old arrived in Paris as one of the hot tips to challenge for the title.
But a long five-setter against Francisco Cerundolo in the previous round appeared to have taken it out of him and he did not get going until the end of the second set.
The opener was a horror show from the young Dane, who made 18 unforced errors, including five double faults, in just seven games.
He gradually began to find his feet and by the beginning of the third set was showing some of the spectacular shots that make him such an exciting talent.
The only minor flash-point came in the opening game of that set when Ruud tried to whip up the crowd straight after Rune had done the same thing.
The night session fans were firmly behind the sixth seed as they willed a contest to break out and it did, with Rune breaking to lead 2-0 and holding his advantage to force a fourth.
Ruud has the experience of having reached two slam finals, though, losing here to Rafael Nadal and then in New York to Carlos Alcaraz last year, and he wrestled back control in the fourth, clinching his fifth match point after two hours and 44 minutes.
It has been a difficult season for the 24-year-old but being back on his favoured clay has allowed him to rediscover his confidence.
He said: “I’m very relieved. I came into this match just trying to play without pressure but it’s not easy, obviously. Luckily for me the first two sets he wasn’t feeling it too well. He came back and in the fourth set I was just lucky to get that one break.
“He was hungry to get to his first semi-final and I was hungry to get back to the semi-finals again. I feel like my game is improving match by match. Playing Sascha (Zverev), it’s so great to see him back in the semi-finals. I think it’s going to be a great match.”