The Melbourne Storm's stars have combined to lead the side past the Roosters and into their first NRL grand final since 2020.
The Storm overcame an early stint in the sin bin to forward Nelson Asofa-Solomona to charge towards a 22-6 half-time lead.
The Roosters came roaring back after the break and cut the deficit to six with 30 minutes to play, however Jahrome Hughes' third try stopped the comeback in its tracks and sent the hosts on their way to a 48-18 win.
The halfback was superb in another clinical performance that saw him pick apart a retreating Roosters defence.
Melbourne fullback Ryan Papenhuyzen was also at his electrifying best throughout the first half before Cameron Munster took over in the second, spearheading the Storm's attack and crossing for a late double to send the sold-out crowd of 29,213 at AAMI Park into a frenzy.
Jahrome Hughes 3rd Try
The Roosters were brave in defeat but ultimately couldn't maintain the intensity for long enough to hang with their opponents.
Friday's defeat marks the end of an era, with club legend Jared Waerea-Hargreaves, Luke Keary, Joseph Manu and Joseph-Aukuso Sua'ali'i departing the team.
It was a dramatic opening 30 seconds to the game, with Asofa-Solomona and Roosters prop Lindsay Collins colliding in a heavy collision from the kick off.
Asofa-Solomona was put on report and sent to the sin bin while Collins was deemed to have suffered a Category 1 head knock and ruled out for the remainder of the match.
Asofa-Solomona sent to the bin
The Storm forward faces a nervous wait for the charge sheet to come out on Saturday morning as he hopes to avoid a suspension that would force him to miss next week's decider.
The Roosters made the most of the extra man, jumping out to a 6-0 lead courtesy of a Daniel Tupou try.
The match turned upon Asofa-Solomona's return, the Storm enforcer putting his team on the front foot with a series of powerful carries.
Papenhuyzen levelled the scores in the 12th minute before Hughes crossed for his first to put Melbourne in front for the first time midway through the first half.
Jahrome Hughes 1st Try
The hosts did not let up, Jack Howarth finishing off a long-range effort five minutes later and Hughes delivering a hammer blow when he charged over from short range in the final play of the opening 40.
An early penalty goal extended the margin to 18 before the Roosters cut it to six with two tries in two minutes.
The visitors came agonisingly close to a third, however desperate Melbourne defence denied Joseph Manu's attempts to ground the ball after he had plucked a bomb out of the air.
Ryan Papenhuyzen 2nd Try
That turned out to be a match-defining play, with the Storm rolling down the field before Hughes charged over for his third to halt the Roosters momentum.
From there the hosts closed out the contest, Papenhuyzen extending the margin and Munster putting the result beyond doubt with two tries in the final five minutes.
Match: Storm v Roosters
Finals Week 3 -
home Team
Storm
1st Position
away Team
Roosters
3rd Position
Venue: AAMI Park, Melbourne
Match snapshot
- The Storm's 48 points was the most the club has scored in a finals match.
- Melbourne forward Nelson Asofa-Solomona was placed on report and sent to the sin bin for a high tackle in the opening minute of the match. Tyran Wishart was put on report for a crusher tackle midway through the second half.
- Roosters lock Victor Radley was put on report for a hip-drop tackle on Asofa-Solomona.
- The Storm have now won 11 of their past 12 games against the Roosters.
- The Roosters have now lost the last four games at AAMI Park.
- Melbourne fullback Ryan Papenhuyzen finished the contest with two tries, 132 running metres, three line breaks and one try assist.
- Cameron Munster finished with 171 running metres, three line breaks, two tries and six tackle busts.
- Jahrome Hughes became the sixth player to score a hat-trick for the Storm in a finals match.
- Nick Meaney has now scored 600 points for Melbourne, fifth on the club's all-time leaderboard.
- Roosters forward Spencer Leniu and Melbourne skipper Harry Grant both played their 100th NRL game on Friday night.
Play of the Game
Jack Howarth Try
What they Said
Storm: Finals Week 3
Roosters: Finals Week 3