Northern Ireland’s Mark Allen came from 5-3 down to beat England’s Jack Lisowski 6-5 in York to set up a UK Championship final meeting against China’s Ding Junhui.
Allen secured victory on the black as Lisowski failed to take his chances.
“I just hung in there and stayed strong,” the 36-year-old told BBC Sport.
Earlier, Ding reached his fourth UK Championship decider after a 6-3 win over Tom Ford.
Lisowski took the opening two frames of his match but Allen levelled it going into the mid-session interval.
After exchanging frames on the restart, Lisowski capitalised when Allen missed a long pot chance of a red along the top cushion to move 4-3 ahead and then closed out the next frame to move within sight of victory.
Allen, though, fought back with a 115 clearance to take the ninth frame and then had a break of 74 in the next after being let back to the table.
In a tense decider, Allen lost position after a break of 36, before Lisowski made 57.
Allen then left the yellow over the middle, but Lisowski missed the green which proved costly as his opponent cleared up to complete another remarkable turnaround.
Earlier, Ding, 35, looked to be on track for his second whitewash in a row when he led Ford 5-0 after his 6-0 victory over Ronnie O’Sullivan in Friday’s quarter-final.
But world number 32 Ford, playing in his first UK semi-final since 2018, fought back.
The 39-year-old missed a chance to make it 5-4 and it allowed Ding, the champion in 2005, 2009 and 2019, back in to seal victory.
- Sign up to My Sport to follow snooker news on the BBC app.