Saints came from behind to secure a 36-20 win in a fast-paced Ladbrokes Challenge Cup quarter-final against neighbours Widnes and with it a first semi-final appearance for four years.
Makeshift full-back Mark Percival scored two of his side’s six tries and also kicked six goals as the Super League champions dug deep to see off a Kevin Brown-inspired Vikings, who played their part in a pulsating tussle at Langtree Park.
Widnes trailed 18-6 in the first half but scored three tries in a 16-minute spell to go in front only to fade badly in the final quarter.
The visitors were the more creative side from the start and looked sure to open the scoring when Brown opened up the home defence to get prop Alex Gerard charging for the line, but skipper Jon Wilkin produced a magnificent tackle from behind to haul him down a couple of metres short.
The Vikings were pressing once more when Percival, Saints’ sixth-choice full-back this season, collected Brown’s deep kick 10 metres from his own line and sent winger Adam Swift on a mazy run through a scattered defence for a glorious try.
Percival added the goal to make it 6-0 but the visitors were quickly back on the attack and, after second rower Chris Clarkson had been held up on his back over the line, slimline scrum-half Joe Mellor demonstrated his deceptive strength to stretch out of the tackle of front-row duo Alex Walmsley and Kyle Amor to touch down.
Danny Craven, who came on for a concussed Stefan Marsh on 13 minutes, kicked the conversion to tie the scores but Percival edged Saints back in front with a penalty before they scored a second try against the run of play.
A trademark offload by heavyweight prop Mose Masoe 30 metres from his own line got the move going and, after centre Jordan Turner had released Swift, Percival was in support to take the final pass for his first try.
Percival’s third goal made it 14-6 and St Helens stretched their lead on 33 minutes when they opted to run a penalty from in front of the posts and created an overlap for right winger Matty Dawson to touch down at the corner.
Although they led 18-6, Saints never looked comfortable and Widnes turned the tie on its head with three tries in 16 minutes either side of the interval.
A break by Australian loose forward Hep Cahill, making his first appearance for three months, set up the position for Craven to take Brown’s pass and force his way through the tackle of Luke Walsh and Percival three minutes before the break.
Patrick Ah Van was unable to add the goal but he was on the scoresheet three minutes into the second half after taking Brown’s cut-out pass to touch down at the corner.
And the visitors hit the lead nine minutes later when centre Chris Dean took Rhys Hanbury’s pass to force his way over for a fourth try to make it 20-18.
This time Craven was wide with the conversion attempt and the misses began to look costly when Amor used his brute strength to crash over for Saints’ fourth try on 63 minutes which, with Percival’s fourth goal, made it 24-20.
Turner looked to have made sure of the win when he went through a tiring defence for another try and Widnes’ last chance disappeared when Saints scrambled to deny Hanbury after he supported a break by Ah Van.
The visitors were forced to chase the game in the final minutes and Percival wrapped up the scoring with a last-minute solo try.