Andrew Cogliano scored the go-ahead goal at 14:41 as Anaheim scored twice in the third period in a 3-2 victory over the resilient Flames.
"That's one of the biggest two points of the season, for sure," said Cogliano. "To come back from behind in the third period, it shows where we're going as a team and I think it's a big statement win for us."
Stephane Robidas' shot from the blue-line was kicked out by Karri Ramo but the puck went right to Cogliano at the face-off circle, who buried his 21st of the season.
"Right place at the right time. It landed right on my stick. When I saw the net, no better feeling," said Cogliano, who put a shot off the post just minutes earlier. "Those are the goals we're trying to score, especially myself. Getting to the net, getting some rebounds."
Finishing it off wasn't easy, however. The Flames poured on the pressure in the final minute with the goalie pulled. Mike Cammalleri's blast came the closest to getting past Anaheim goalie Jonas Hiller, but the Ducks hung on.
"It's one of those things where they're just throwing everything at the net and you're trying to find the puck somehow. I found it once or twice there so we could at least get a whistle," said Hiller, who had 32 saves.
It was a nice bounce-back game for him after getting chased less than 12 minutes into the last start at the Scotiabank Saddledome after yielding three goals on five shots.
"The whole team was upset with what happened last time. I didn't feel I played terribly or whatever but those things happen and it's nice if you get a chance pretty quick to do better," said Hiller. "Definitely happy with the way we responded and the way I responded. I thought we played a pretty good road game."
Nick Bonino and Mathieu Perreault also scored for Anaheim (47-18-7), which kicks off a three-game road trip to Western Canada with its sixth road win in its last eight games away from the Honda Center.
The win moves the Ducks to within two points of the San Jose Sharks and the lead in the Pacific Division. Anaheim still holds two games in hand.
Hiller says winning the division is definitely a priority.
"It would be great to be up there because if you're second, you have a good chance of playing L.A. in the first round which would be a tough match-up," Hiller said.
Brian McGrattan and Jiri Hudler scored for Calgary (30-36-7). Rookie defenceman Tyler Wotherspoon had an assist to give the 21-year-old points in his last three games.
"That's the way you learn sometimes, too. You learn from tough losses," said McGrattan, who was playing his 300th NHL game. "Our group hasn't given up all year. We're in every game and work our butts off right until the end and that's a good sign."
It's the Flames league-leading 44th one-goal game, one shy of the franchise record set in 2005-06.
"If you look at the young guys throughout the year, how they're showing up against these teams late in the year when we're playing San Jose, L.A., Anaheim — we're playing all these top teams down the stretch and we're giving them a run for the money every night. That's a lot to build off of as a group and it's a lot to learn from," said McGrattan.
Trailing 2-1 headed to the third period, the Ducks tied it at 5:32 on Perreault's 16th goal.
"We fought hard in the third and got a couple bounces our way and finally we were able to put it in and win the game," said Perreault, who extended his point streak to six games (four goals, two assists). "Coming down the stretch, we play a couple teams that are already out of the playoffs. We have to take advantage of those games."
Trailing 1-0 after the first period, the Flames scored twice in the second to take the lead.
The tying goal, which bounced off Kevin Westgarth's glove in front and then into the net off of McGrattan's hip was the rugged winger's fourth goal and 10th of his career.
Calgary took a 2-1 lead with 26 seconds left in the second when a pretty fake shot then pass from Ladislav Smid set up Hudler.
"It's a good effort. We know we can play with every team in the league but it's not good enough — a good effort, we have to get results too. That's the business of hockey," said Ramo, who had won his previous five decisions.
Ramo, who had 31 stops, had his record fall to 13-11-4. Hiller improves to 29-11-6.
"They paid the price and when they came to the net, they had a lot of shots and a lot of traffic with them," said Ramo. "They were into the game today, unlike the last game. I think they had a chip on their shoulders when they came here today."
Notes: On the eve of the one-year anniversary of the trade of Jarome Iginla to Pittsburgh, the two players they received in return - LW Kenny Agostino and RW Ben Hanowski, were both healthy scratches for the Flames... Calgary LW TJ Galiardi drew back in after missing the past two games... Not in the line-up for Anaheim were D Francois Beauchemin, C Daniel Winnik and LW Matt Beleskey... Anaheim's 22nd road victory ties the franchise record, previously done in 2006-07 and in 2008-09.