Top seed Carlos Alcaraz fought back from a set down against Nicolas Jarry to keep alive his Rio Open title defence by booking a spot in Sunday's final.
The Spanish 19-year-old triumphed 6-7 (2-7) 7-5 6-0 to win in two hours and 43 minutes in Saturday's semi-final.
Alcaraz raced away with the match with a third-set bagel in 32 minutes after both of the first two sets lasted more than an hour each.
The 2022 US Open champion produced one of the shots of the season to go 2-0 up in the third set, producing a remarkable running pass down the line.
He's not even on the screen! @carlosalcaraz takes control with this cracker @RioOpenOficial | #RioOpen pic.twitter.com/8bAFNVAecw— ATP Tour (@atptour) February 26, 2023
Alcaraz had undergone treatment on his upper left leg late in the second set at 5-5 but showed off his toughness to reel off eight straight games.
"I'm so proud of myself," Alcaraz said, having only just returned from injury in last week's Argentina Open which he won. "To be in a final again in my second tournament is a really special moment for me... I couldn't ask for a better start of 2023."
The Spaniard will take on second seed Cameron Norrie in the decider, after the Briton won 6-2 3-6 7-6 (7-3) over Bernabe Zapata Miralles in Saturday's other semi-final.
Norrie needed two hours and 32 minutes to get the better of Zapata Miralles, meaning he has won 13 of his past 15 tour-level semi-finals.
Alcaraz and Norrie faced off in last week's Argentina Open final, which the Spaniard won in straight sets.
Back to back finals for @cam_norrie— ATP Tour (@atptour) February 25, 2023
The 6-2, 3-6, 7-6(3) scoreline fires the No.2 seed into the silverware showdown vs Alcaraz or Jarry @RioOpenOficial | #RioOpen pic.twitter.com/6rWa8osK9R