Rafael Nadal gained revenge over Alexander Zverev to stay on track for a 10th title at the Italian Open in Rome.
The Spaniard needed nearly three-and-a-half hours to defeat Denis Shapovalov in the third round on Thursday, saving two match points, and backed it up brilliantly with a 6-3 6-4 victory over Zverev.
The German had won his last three meetings with Nadal, including in the quarter-finals of the Madrid Open last week, but saw his opportunities consistently snuffed out.
In a reversal of his fortunes against Shapovalov, Nadal surged into a 4-0 lead before Zverev gained a foothold in the contest and made things tight.
There was a worrying moment for Nadal when he caught his foot on the service line sliding to the ball and fell heavily, but he recovered quickly to serve out the set.
The second set was one of the best of the tournament, with the pair engaging in lung-busting rallies, but a single break of serve ultimately proved the difference as Nadal saved all eight break points he faced.
“Today I played much better than yesterday,” said the second seed. “I did a lot of things well, playing much more solid. I think I played one of the more solid matches on clay this year against a very tough opponent. It’s a great victory for me.
“Under pressure, under tough moments that sometimes I lost important points the last couple of weeks, today, yesterday, before yesterday too, I was able to manage it well. To hold well the pressure, to put one more ball in.
“I think my movements have been improving. Today was a good day in that. I’m super happy because, after the battle of yesterday, to be able to be on court against a player like Sascha – he had a tough match, too, but he’s more than 10 years younger than me.
“I remember well the feeling on the body when you are younger comparing to today and the feeling is completely different. And I was able to be fit, to be ready, and that’s something that gives me confidence.”
Nadal next faces a surprise opponent in seven-foot American Reilly Opelka, who is through to his first Masters semi-final after a 7-5 7-6 (2) victory over Federico Delbonis.
Opelka said: “I’m really pleased. We have been working hard. I made some adjustments on my game. It’s nice to see them come into play.
“Rafa’s brutal. But it will be a good test. I’ve never played Rafa.”
Novak Djokovic has work to do after his quarter-final tie with Stefanos Tsitsipas was suspended with the world number one trailing by a set and a break down in the second.
Athens-born Tsitsipas was 6-4 2-1 up when a second stoppage occurred due to the wet weather and this time there was no coming back to the court.
The winner of that tie will face either home favourite Lorenzo Sonego or Andrey Rublev, who were not even able to get their last eight contest under way on Friday.