Huddersfield Giants moved to within three points of Super League leaders Wigan Warriors as they beat St Helens at the John Smith's Stadium.
Giants' Danny Brough excelled as tries from Aaron Murphy, Joe Wardle and Dale Ferguson helped put the hosts 18-0 up.
Jon Wilkin reduced the deficit for Saints, who had Ade Gardner carried off on a stretcher late in the first half.
Wardle crossed again and Huddersfield held on, despite late St Helens tries from Josh Jones and Jordan Turner.
It proved to be an unhappy return for Saints coach Nathan Brown, coming back to the John Smith's Stadium for the first time since leaving his role at Huddersfield last July.
But his side, beaten for the sixth time in their last seven Super League matches, will rue two key decisions going against them.
Wardle's first try, which put Huddersfield 8-0 in front, came after a controversial decision by video referee Ian Smith, while Giants' Anthony Mullally was lucky to stay on the field after a dangerous challenge on Gardner, which saw the winger taken off injured.
The Giants completed their first league double over the Saints since 1951 and went ahead inside 11 minutes.
It came after a knock-on from St Helens full-back Paul Wellens and a sweeping move, which included four passes across the field, ended with Murphy diving over after Brough's excellent pass cut out two Saints players.
The Giants doubled their lead shortly afterwards in controversial circumstances. Centre Wardle, back in the team after a two-game suspension, was judged by Smith to have touched down a Brough kick forward, although the visitors believed Turner had got their first.
Steve Ganson had originally been scheduled to take the video referee role but was dropped because of a mistake in the Hull derby during the previous week's Magic Weekend clash and the Saints players were furious with Smith's decision.
Brough had missed the conversion from the first try, but added the extra two points to make it 10-0, before his penalty in front of the posts extended the lead to 12-0.
The Giants half-back was having an excellent game and was heavily involved in his side's third try, leading an attack before passing inside to Dale Ferguson, who had a simple task to run through unchallenged.
Saints finally got involved in the 33rd minute when Wilkin burst through the challenge from two Giants players to dive over the line. Gareth O'Brien then scored his first two points for the Saints since joining on loan from Warrington.
The half ended badly for the visitors as Gardner was carried off following a fierce, head-high challenge from Mullally, who could now face a retrospective ban when the disciplinary panel review the incident.
A victory for Saints would have taken them back inside the top eight but they fell 19-6 behind early in the second half after Brough's drop-goal.
Brough was involved again in his side's fourth try, providing an excellent dummy before releasing Wardle for his second score.
The game looked finished but scores from Jones and Turner within three minutes gave Saints hope, but Huddersfield held on for the victory, their seventh in their last eight Super League matches.
Huddersfield: Grix, McGillvary, Cudjoe, Wardle, Murphy, Brough, Robinson, Crabtree, Lunt, Kopczak, Ferres, Ta'ai, Ferguson.
Replacements: Lawrence, Patrick, Mullally, Dwyer.
St Helens: Wellens, Gardner, Percival, Jones, Meli, Turner, O'Brien, McCarthy-Scarsbrook, Hohaia, Puletua, Soliola, Manu, Wilkin.
Replacements: Roby, Clough, Walmsley, Thompson.
Referee: Richard Silverwood (RFL)