Judd Trump will play Neil Robertson in Sunday's English Open final after beating John Higgins 6-4 in Milton Keynes.
Four-time world champion Higgins held the upper hand in the early stages and with the help of two century breaks went 4-3 up.
But world number one Trump took the next three frames and while leading 5-4 in the 10th, a score of 73 sealed victory.
After Trump had drawn level at 2-2 with a break of 102, Higgins made 133 in the next and a second century - 107 - put him 4-3 ahead, but the Scot was made to pay for several errors.
Robertson stayed on course to become the first player to win his 19th ranking title by edging defending champion Mark Selby 6-5.
Robertson took a 2-0 lead after clinching two cagey opening frames and also led 4-2 and 5-3, but each time Selby battled back to level before the Australian sealed his place in the final with a 92-break in the decider.
Three-time world champion Selby made the first century break (117) in the third frame, but Robertson made scores of 134 and 129 to forge 5-3 ahead.
Selby edged a tight ninth frame and levelled at 5-5 with his fourth half-century break of the match, but Robertson was not to be denied.
It's always tough to beat John Higgins, but that's what @judd147t has done tonight...— World Snooker Tour (@WeAreWST) October 17, 2020
...to reach the final of the https://t.co/0mCRoqdsmX English Open!
When he walks out with Neil Robertson, he will become the first to play in five #HomeNations finals #EnglishOpen pic.twitter.com/CB28rJQCGG