Bradford Bulls (10) 19
Tries: Platt, Kearney, Menzies Goals: Orford 3 Drop-goal: Orford
Harlequins RL (6) 12
Tries: Melling, Orr Goal: Orr, Gale
Orford's late penalty and drop-goal clinched victory for the Bulls
Bradford climbed above Leeds into the Super League top eight after victory over rock-bottom Harlequins.
Chris Melling opened the scoring for the visitors but the Bulls replied immediately through Michael Platt.
Brett Kearney then went over as the home side went in 10-6 ahead at the break, with Steve Menzies extending their advantage after the restart.
Quins reduced the arrears with a Danny Orr try, but a Matt Orford penalty and drop-goal put the game out of reach.
It was hard work for the Bulls against a side who have won just one game this season.
And it was not made any easier when Chad Randall sent Melling over with a suspiciously forward offload, Orr adding the conversion.
Bradford's response was immediate as Platt pounced on a loose ball after a clever kick caused panic in the Quins defence.
Orford's conversion attempt hit the post, but the Bulls hit the front when Kearney scampered on to Platt's inside pass and extended their lead when Menzies weaved his way through.
Orr gave Quins hope with a fine breakaway score but Orford's boot secured victory for the Bulls.
Bradford coach Steve McNamara:
"There was a lot of endeavour and effort from both sides but the heavy pitch made conditions more difficult than they looked.
"It wasn't an A-star performance from either team but it was nice to get two points and that was the key.
"We'd love to be playing right at our best, but it's important to keep building."
Harlequins coach Brian McDermott:
"I don't think kicking ice buckets and screaming that we've lost another game is the way to go.
"I praised them for the good things that we are doing. I know Bradford are not star-studded, but to compete with them and push them, I've got to be proud of that."
Bradford: Kearney, Sheriffe, Platt, Nero, Reardon, Sykes, Orford, Scruton, L'Estrange, Lynch, Langley, Whitehead, Menzies.
Replacements: Godwin, Donaldson, Kopczak, Hall.
Harlequins RL: Jones-Bishop, Sharp, Clubb, Howell, O'Callaghan, Gale, Randall, Wilkes, Orr, Ward, Williamson, Melling, Golden.
Replacements: Bryan, Williams, Bolger, McCarthy-Scarsbrook.
Referee: Richard Silverwood (Dewsbury).