Karen Khachanov came from behind to stun top seed Alexander Zverev and reach the ATP Toronto Masters final, where he will face rising American star Ben Shelton.
Khachanov saved a match point and clawed his way through a tense third-set tiebreak to seal a 6-3, 4-6, 7-6(4) victory over Zverev.
The 11th-seeded Russian had never made it past the semi-finals in Canada, but finally broke through after a mentally and physically draining contest.
Zverev hit 44 unforced errors in a match lasting nearly three hours, while Khachanov managed 29 winners and showed nerves of steel in the closing moments.
In the earlier semi-final, fourth seed Shelton delivered a dominant 6-4, 6-3 win over fellow American Taylor Fritz to reach the biggest final of his career.
It marked the first all-American Masters 1000 semi-final since 2009 and Shelton’s first run of back-to-back wins over top 10 players.
The 22-year-old world number seven hit cleanly throughout, broke Fritz three times, and never looked back after going up 3-2 in the second set.
He closed the match with a break, prompting Fritz to smash his racquet in frustration.
“I felt I had the ball on a string,” Shelton said. “Beating two top 10 guys in a row is huge for me.”
Khachanov and Shelton will now meet for the title in what promises to be a clash of power and grit.