"We weren't happy with the way we had performed in the game and we talked in the locker room, obviously about being better," said Bruins goalie Tim Thomas, who finished with 30 saves. "We needed to find a way to win the game and we did. You can talk about things a lot, and sometimes it happens and sometimes not. One of the good things about this team is more often than not it happens."
The win came at the end of a four-game trip that has seen Boston lose in Carolina, beat Florida in a shootout and lose in Tampa.
Trailing 1-0 and limited to 12 shots in the opening 40 minutes, it seemed that the Bruins were about to lose consecutive games for only the fourth time this season.
"Once we got that goal, it was us again, playing the way we are capable of playing," Bruins captain Zdeno Chara said. "They were really ready for us and came out strong, with a good game plan. We were finding our legs and were a little hesitant. Once we scored the goal, we got rid of the load and we just played our game.
The goals by Horton and Campbell put the Bruins ahead for good as they beat New Jersey for the third time in three games this season and snapped the Devils' three-game winning streak. Chris Kelly added an empty-net goal in the final minute.
Devils goalie Martin Brodeur didn't have a chance on any of the three goals in the 4:44 outburst.
Ference blistered a shot high into the top corner of the net. Horton's 17th of the season came on a deflection in front on a power play. Campbell got his fifth on a rebound.
"We haven't been playing very good hockey," Horton said. "We had to get out of it sometime and it's a big win to come back."
Devils coach Peter DeBoer wasn't happy with the officials on Horton's goal. He said Horton interfered with defenseman Matt Taormina at the blue line.
"Our defenseman falls down and they choose to ignore it," DeBoer said. "That's the game right there."
The play allowed the Bruins to enter the offensive zone and they kept the pressure on. David Krejci eventually slide a puck from the left circle in front and Horton redirected it past Brodeur. For a split second it appeared that the puck might have hit off Taormina's skate.
It was more confusing when it was announced that Milan Lucic, who was standing at the side of the net, was awarded the goal, but eventually Horton got credit.
Before the debate was over, Campbell had made the score 3-1. Brodeur made a save on a shot by Thornton and Campbell deposited the rebound into an open net.
"In the third period once we got that goal, the Ference goal, it seemed out breakouts were clean, our execution was better and we went from there," Bruins coach Claude Julien said. "We got our second wind and things started going the way when we were playing well."
Petr Sykora scored for the Devils, who played a much better game than their last meeting with the Bruins, a 6-1 debacle.
"We had our chances," Brodeur said. "We hit the crossbar in the second and Thomas made the saves when he had to. They stayed in the game and got back. That's unfortunate. I thought we played two good periods against a good team. We battled real hard and did a lot of good things."
Sykora gave the Devils the lead with 1:31 left in the first period with a goal off a faceoff. Patrik Elias won the draw and Dainius Zubrus outhustled Bruins defenseman Dennis Seidenberg to the puck and slid a pass out front to Sykora for a point-blank shot.
Devils defenseman Mark Fayne hit a goalpost 1:10 into the third period and then the Bruins grabbed control.
Bruins C Patrice Bergeron played in his 500th NHL game. ... Boston D Johnny Boychuk celebrated his 28th birthday. ... Sykora has scored in consecutive games after going eight games without a goal. ... Devils D Henrik Tallinder will be sidelined six to eight weeks because of a blood clot in his left leg. ... The Bruins had 13 shots in the third period ... The four goals gave Boston 19,000 as a franchise.