|Ladbrokes Challenge Cup quarter-final|
|St Helens (18) 36|
|Tries: Swift, Percival 2, Dawson, Amor, Turner Goals: Percival 6|
|Widnes Vikings (12) 20|
|Tries: Mellor, Craven, Ah Van, Dean Goals: Craven, Ah Van|
St Helens completed the Challenge Cup semi-final line-up with a home win over Widnes Vikings at Langtree Park.
Widnes led by two points with 15 minutes remaining, but Saints duo Kyle Amor and Jordan Turner both scored tries to restore the home side's lead.
And stand-in full-back Mark Percival crossed for the second of his two tries in the dying seconds to secure victory.
Super League champions Saints have not reached the Challenge Cup final since they last won the competition in 2008.
Keiron Cunningham's side will face holders Leeds Rhinos in the last four.
Their quarter-final win was far from routine, as Widnes - chasing a last-four spot for the second successive year - came back from 12 points behind to lead, before Saints fought back themselves with three tries without reply.
Early on, Jon Wilkin's try-saving tackle denied Vikings prop Alex Gerrard the first score, before St Helens winger Adam Swift raced 90 metres to put the home side in front.
Widnes scrum-half Joe Mellor stretched over from close range to level but Percival, filling the full-back berth for St Helens in the absence of several injured alternatives, slotted over a penalty to restore his side's lead before latching onto Swift's well-timed pass to touch down himself.
Matty Dawson cruised over in the corner for the hosts' third try, but 14 unanswered points either side of half-time put Widnes ahead for the first time.
Danny Craven muscled his way over before the break, Kevin Brown's fired pass picked out Patrick Ah Van to cross after the interval and then Chris Dean's score, given after consultation with the video referee, gave the Vikings a narrow advantage.
That lead lasted until Amor's robust effort was allowed to stand, again with the help of the video referee, before Turner burst through two tackles to settle the contest.
Another Percival penalty, his fifth successful kick of the match, removed any hopes of a Widnes comeback and he completed the scoring with a second converted try for a personal tally of 20 points.
|Analysis: Ashton Sims, Warrington Wolves prop and BBC Sport pundit|
|"Full credit to Widnes - they came out like a bull out of the gates in the second half, but St Helens grind and dig hard, and that's exactly what they did today."|
St Helens captain Jon Wilkin told BBC Sport:
"It was a great game - tough and competitive. Widnes are a quality side and Denis Betts gets them playing really well.
"We're really pleased to be in the semi-finals. There are some great teams who are in good form heading into that."
Widnes Vikings coach Denis Betts told BBC Sport:
"I'm really proud of the effort we put in. We did some great things and had lots of opportunities.
"We just don't have enough composure and a little bit of luck on our side at the moment to be able to close these games out.
"We've had a lot of close games this year and been on the wrong side of them."
St Helens: Percival; Dawson, Jones, Turner, Swift; Burns, Walsh; Amor, Roby, Walmsley, Wilkin, Greenwood, McCarthy-Scarsbrook.
Replacements: Masoe, Flanagan, Richards, Savelio.
Widnes Vikings: Hanbury; Flynn, Marsh, Dean, Ah Van; Brown, Mellor; Manuokafoa, Heremaia, Gerrard, Clarkson, Whitley, Leuluai.
Replacements: Cahill, Isa, Craven, Dudson.
Referee: Robert Hicks