The Penrith Panthers have knocked out minor premiers the Melbourne Storm 10-6 in a Saturday night thriller at Suncorp Stadium to seal a grand final meeting with the South Sydney Rabbitohs.
In one of the bravest defensive efforts in Panthers history, Penrith restricted the Melbourne juggernaut to just the one try.
Dylan Edwards put in one of his gutsiest performances at the back for Penrith, running for over 200 metres and busting seven tackles.
It was his clean-up work in defence and kick positioning though that proved crucial in the latter stages of the game as his teammates tired.
Up front, Kurt Capewell and Liam Martin were inspirational on the edges, combining for 97 tackles.
Meanwhile, Nathan Cleary and Jarome Luai steered the side around with a pinpoint kicking game and hooker Apisai Koroisau was scheming out of hooker.
It means the Panthers could now become the first team since the Cowboys of 2015 to taste premiership success despite losing in the opening week of the finals.
A Cleary kicking masterclass brought on the first point of the afternoon, with a towering bomb forcing George Jennings into an error.
A confident Cleary then spotted space out wide and put it in the air for Stephen Crichton to score the opener.
The halfback piloted the ball through from the sideline to make it 6-0.
Trick shot sets up opening four-pointer
The Storm immediately flipped the script and heaped pressure on Penrith, with Edwards saving the day in cover defence to bat a Cameron Munster kick dead as Josh Addo-Carr loomed in support.
Melbourne looked certain to make the Panthers pay with a slick right-edge raid but Jennings dropped the ball with the try line begging.
In a high-quality battle both sides threw everything at each other, with the Storm again close to scoring in the 22nd minute through Nelson Asofa-Solomona.
An obstruction in the lead-up though was ruled, keeping the scoreline at 6-0.
That would remain the difference at halftime but only because of incredible Panthers defence that is hard to put into words.
First it was a one-on-one effort from Edwards that stopped Ryan Papenhuyzen, before an offload right after saw Justin Olam look destined to score.
Stephen Crichton and Capewell though scrambled to deny the Storm centre and that desperation lasted the entirety of the half.
Viliame Kikau and Matt Burton were next to turn try savers, with the second rower coming up with the crucial first piece of contact on Jahrome Hughes before Burton finished it off.
Desperation stations from Capewell and Crichton to stop Olam
The Panthers were then dealt a blow with Luai forced from the field for a concussion test after a stray arm from Cameron Munster to the head.
It saw the versatile Tyrone May brought onto the field and he had an immediate impact, with a pass to the left almost finishing with Brian To’o diving over in the corner.
Melbourne though refused to let up, forcing an error from the Panthers winger.
There was one defensive stand left in the Panthers as Burton flung the ball back inside and it was scooped up by Hughes, who raced away.
An inspiring chase from Scott Sorensen saw him tracked down and the Panthers, like they had the whole 40 minutes, turned up for each other to force an error and maintain their 6-0 lead.
HALF-TIME: Panthers 6 - Storm 0
The Panthers started the second half where they left off, pressuring the Storm into an error and this time it led to points right away.
Yeo dug into the line and opened up space for the lethal left edge, with To’o finishing it off.
Kikau perfects the catch and pass
Cleary could convert the try, leaving the score at 10-0.
The second half continued to be a back-and-forth tussle with Liam Martin and Capewell both impressing in defence on the edges.
Edwards, meanwhile, once again stood tall in the last line of defence to save a try when he stopped a runaway Hughes with 17 minutes remaining.
The effort was in vain though as Melbourne eventually posted its first try of the game, with Munster kicking for Papenhuyzen who pounced.
The try scorer converted his own kick to reduce the deficit to four.
The Storm had all the momentum for the next five minutes – that was until a Luai kick forced an error from Jennings and gifted Penrith a full set inside the Melbourne 20.
The Panthers could not find the knockout blow but it did not matter – Ivan Cleary’s men held firm in defence to secure an all-time finals victory and book a grand final meeting with South Sydney.
FULL-TIME: Panthers 10 - Storm 6