Kyren Wilson beat Ronnie O’Sullivan 6-5 to book his place in Sunday’s Welsh Open final in Cardiff.
O’Sullivan had hoped to win a fifth Welsh Open title in Cardiff, his last crown there coming in 2016.
But at the end of a tussle that went down to the final frame, Wilson edged the contest against his English compatriot.
Wilson will play Shaun Murphy in the final after he beat China’s Yan Bingtao 6-5 in the other semi-final.
Yan came back from 4-2 down to lead 5-4 before Englishman Murphy levelled to send the match into a decider.
Murphy then potted a long red after his opponent’s break off and went on to make 109 to win a match that went on just past midnight.