Gary Anderson will play Mensur Suljovic in both players’ first World Matchplay final after a thrilling 17-12 victory over the giant-killing Jeffrey de Zwaan.
In an electric display of relentless high-scoring, the Flying Scotsman’s firepower eventually proved too much for the rising Dutch star, who managed to hold his own until well into the second half of the match.
Despite getting off to an awful start with his finishing in the first five legs by missing 12 darts at doubles, Thursday night's nine-dart hero Anderson recovered emphatically to end with an average of 106.06 while he also unleashed a barrage of 16 180s and three 100+ checkouts, including a stunner from 152, to thrill the Winter Gardens crowd.
Nevertheless, Sky Bet's 4/7 favourite for the title (click for more odds) will want to brush up on his finishing before Sunday night's clash (live on Sky Sports, 7pm) with the dangerous Suljovic (13/5), who has beaten him in four of their previous eight games including last year's Champions League Darts final.
Anderson told www.pdc.tv: "It was good performance and it had to be to beat Jeffrey - he has a great attitude and he is a very good dart player. We kept following each others 180s, I knew it was going to be a hard game and I started to get a bit nervous at the end.
"I think we will see a different Mensur tomorrow - he is a gentlemen but I've got a different head on than when I used to play him so we'll see what happens."
Anderson had missed 16 doubles by the 15th leg which allowed de Zwaan to stay in touch at 8-7 down while he spurned 27 of them in total, ending with a checkout percentage of 37.78%.
At 47, the Scotsman is now one win away from adding the sport’s second most prestigious event to his glittering CV while victory would also see him become only the third man in history to complete the Triple Crown consisting of the World Championship, World Matchplay and Premier League.
The others, of course, being Phil Taylor and Michael van Gerwen.
De Zwaan, who came into this tournament ranked 68 in the world and a 750/1 rank outsider before shocking Michael van Gerwen, Adrian Lewis and Dave Chisnall, averaged 99 and also weighed in with nine maximums and three 100+ checkouts in another superb display which further underlines his potential in the sport.
The Dutchman's chances of a fourth successive upset crucially slipped away at 11-9 down when four missed doubles allowed the Scot a let-off as he opened up a three-leg cushion.
The 22-year-old started the year having to win his Tour Card back at Qualifying School but has since won a maiden PDC title in a Players Championship, beaten MVG in two televised majors (UK Open being the other back in March) and now has a World Matchplay semi-final run under his belt.
Earlier Suljovic reached his first World Matchplay final after a hard-fought 17-13 victory over Peter Wright.
In a match of below-par scoring from both players, the Austrian finally got himself over the line but he's a considerable underdog to defeat Anderson on Sunday night.
Suljovic, who is now one win away from claiming his second major title having upset the odds to land the Champions League of Darts last year, recorded a mediocre average of 90.29 and hit just three 180s, with Snakebite managing four maximums in an average of 88.68.
The Austrian's finishing was marginally better with a checkout percentage of 38.1% compared to Wright's 37.14 while he also hit the highest checkout of 151.
Afterwards the 46-year-old joked that he still didn't have a chance of lifting the trophy - just like he maintained during the Champions League - but he'll certainly need to improve on this display to do so.
"I am so happy to win this match," added Suljovic, who has won the German Darts Masters and Danish Darts Open in the past three months. "I didn't think I would win - I was very nervous but I didn't tell anyone. I have already reached my goal, anything else is a bonus but I will give it 100%.
"Thank you to the fans, the crowd was brilliant saying 'come on Mensur' – they helped me win this game."
Despite an incredibly unlucky opening three darts to the match, when Wright saw his second two throws incredibly cannon into the first he landed in single five, Snakebite still managed to take the first leg before opening up a 3-1 lead.
Suljovic won the next with a fine 87 checkout to complete an 11-darter and finally inject some quality into the semi-final while he added a further two after the first interval to move ahead for the first time in the match.
An out-of-sorts Wright, who had averaged well above 100 in his last two matches, temporarily sparked into life when he finished off a 12-darter with a stylish 136 checkout only for a more clinical Suljovic to win five of the next seven legs to go 9-6 up by the third interval.
Snakebite finally hit his first 180 of the match straight after the break as he went on to win back-to-back legs while he maintained the momentum to pick up another two of the next three to square it up at 10-10.
At this point the crowd had only seen three maximums as both players struggled to find their best form and although their doubling were impressively pushing towards 50%, the scoring averages were in the low 90s.
The scoring showed few signs of improving after the break but Suljovic halted Wright's revival by winning four legs on the spin, with the second of which coming by virtue of a superb 151 checkout.
The 2017 Champions League of Darts winner really should have moved two away from victory in the next leg but missed six darts at a double - two of which landing in the wrong double bed - as Wright stole it to keep his fading hopes alive.
The next two legs were shared before Suljovic again went into the wrong double - only this time he recovered to pin double three and move just one away from victory.
Wright pulled one back with a 13-darter but spurned six attempts to take the next as Suljovic made him pay on his favourite double 14 to finally get the job done.
Semi-final results & Sunday schedule
Saturday July 28
Semi-finals (best of 33 legs)
- Mensur Suljovic 17-13 Peter Wright
- Jeffrey De Zwaan 12-17 Gary Anderson
Sunday July 29 (1900 BST)
Final (best of 35 legs)
TV channel: Sky Sports
- Gary Anderson v Mensur Suljovic