Douglas B secured their place in the Dorchester Atlantic Marine Manx Plate final with a 33-7 win over Castletown at Poulsom Park.
Douglas took the lead midway through the first half with a Karl Mason try.
Seb Jeanneau then added a second on the half hour to give his side a 10-0 lead before Castletown hit back with a Matty Craine try, which Gary Stephenson converted.
Douglas hit the gas in the second half.
Matt Dyson hovered up a loose ball to extend the lead.
Ben Pote added a penalty and then Dyson picked up his second of the game to push the Douglas lead out to 23-7.
As Castletown started to tire, Douglas made the game super-safe with late tries from Lloyd Jones and Seb Jeanneau.
They will meet Vagabonds B in the December 15 final.