Catalans Dragons: (6) 18
Tries: Chan, Greenshields, Bosc
Goals: Bosc (3)
Bradford: (6) 20
Tries: Finnigan, Hape, Morrison
Goals: Deacon (4)
Simon Finnigan's late try, converted by Paul Deacon, sealed a crucial win for Bradford away to the Catalans Dragons.
The Dragons looked set for victory when tries from Clint Greenshields and Thomas Bosc, plus two Bosc goals, put them 18-14 up with five minutes to go.
But the Bulls, who had earlier led 14-6 after Shontayne Hape and Glenn Morrison crossed, refused to give up.
Finnigan went over in the final seconds to level it while Deacon's kick gave the Bulls the points.
But coach Steve McNamara will be concerned after four players limped off through injury.
Jamie Langley bowed out with a groin strain on 20 minutes and he was joined by back-row colleagues Morrison and Chris Nero in the second half and finally full-back Michael Platt.
However, McNamara, who dropped Iestyn Harris for the first time in his career, saw his men battle on for the much-needed success.
It was the visitors who got off the mark first after six minutes after Deacon's delicate chip deceived Catalans full-back Greenshields.
Morrison picked up and neatly side-stepped Dimitri Pelo before sprinting to the posts from 30 metres out.
Deacon converted but Greenshields made up for his mistake by scoring after 28 minutes when Bosc's reverse kick bounced awkwardly and the retreating Hape delayed leaving the Catalans man to mop up.
A Deacon penalty put Bradford ahead on 45 minutes and he converted when Hape crossed just after the hour mark.
Catalans had Pelo sin-binned for a professional foul but rallied back through tries from Chan and Bosc and looked set for only their second win before the Bulls came good at the end.
Catalans coach Mick Potter
"I thought we had a pretty good chance of winning it with two minutes to go.
"But Paul Deacon came up with a fantastic kick at the end for their try and it's the second time it's happened after Hull KR came here and did the same.
"I thought our guys out there should be proud of the effort they've put in though.
"It's frustrating having won just once in five because possibly we could have had three by now. We're going to have to scrabble around now for those later in the season."
Bradford coach Steve McNamara
"I questioned our players about their toughness last week and they have just responded in a magnificent manner.
"It was ugly but we needed a win and managed to find a way to get it.
"We've picked up four pretty serious injuries as well and had no one left to use on the bench for the last 30 minutes. To do that away in France with players who desperately needed a rest and desperately needed to come off was just outstanding.
"I tip my hat off to them. There was some heroic defence at times as well and I'm absolutely delighted."
Catalans Dragons: Greenshields, Murphy, Wilson, Stacul, Pelo, Mogg, Bosc, Chan, Gorrell, Guisset, Raguin, Croker, Gossard.
Replacements: Mounis, Fakir, Casty, Khattabi.
Bradford: Platt, Evans, Sykes, Hape, Tadulala, Jeffries, Deacon, Lynch, Newton, Burgess, Nero, Langley, Morrison.
Replacements: Tupou, Feather, Finnigan, Godwin.
Referee: A Klein