In a tough and intense match, the Wire took control in the second half to earn their spot at Old Trafford next week. They will face either Hull FC or Wigan in the decider.
It was defence that dominated in the first half with both teams keeping their mistakes to a minimum.
In the 19th minute Warrington took the lead thanks to a Declan Patton penalty.
Five minutes later and Saints evened it up to make it 2-2 with a goal from Luke Walsh.
Kurt Gidley forced his way over in the 29th minute for the first try of the game. Patton added the extras to make it 8-2.
The visitors took a 8-10 lead into half-time courtsey of another Walsh penalty.
In the second half the momentum swing back towards the Wire when Stefan Ratchford took advantage of a quick play-the-ball to dart over from dummy half.
Patton converted and the home team had a 14-10 buffer.
Warrington went further ahead in the 63rd minute. Ratchford found Tom Lineham out wide with a cutout pass and the winger crashed over to make it 18-10.
The try was awarded straight away by the referee but on video replay it appears Lineham knocked the ball on before grounding it.
In the 78th minute Domnique Peyroux forced his way over the try-line but the effort was controversially ruled out by the video referee.