Dion Phaneuf and Alex Tanguay scored first period goals as the Flames opened up an early lead and and went on to a 3-2 victory over the Anaheim Ducks.
After having its five-game winning streak snuffed out by consecutive road losses in Nashville and Dallas, Calgary returned home where they reeled off their fifth straight home ice victory and improved to a league-best 19-5-0.
"We weren't satisfied with the last couple games on the road and tonight we came out really well in the first period and that set the tone for the remainder of the game," said Flames centre Stephane Yelle, whose second period goal at 9:25 stood up as the game-winner.
Calgary (25-17-4) moves to within two points of the Vancouver Canucks, leaders of the Northwest Division. They also improved to 5-2-0 without leading scorer Jarome Iginla, who will be sidelined at least two more weeks with a sprained left knee.
"We're just a little bit more confident right now here," said Tanguay. "For us, it's just a matter of what we do on the road where we know we are capable of winning hockey games."
The Flames get a chance to end their road misery Saturday night in Edmonton, in Calgary's last game before the NHL all-star break.
Scott Niedermayer scored both goals for Anaheim (30-12-8), which limps into the break losers of four in a row and nine of its last 11 (2-7-2). The Ducks' lead atop the Pacific Division is down to four points, and the trailing San Jose Sharks hold three games in hand.
"It's pretty disappointing," said Niedermayer. "We've put together a stretch of hockey here that hasn't been a lot of fun."
Phaneuf opened the scoring on a power play just 56 seconds into the game. Matthew Lombardi won a face-off back to the Flamed defenceman, who beat Ilya Bryzgalov on a long wrist shot.
Tanguay made it two goals on five shots at 11:58 squeaked a wrist shot under the arm of a shaky-looking Bryzgalov.
"It's just another story of us not competing for 60 minutes," said Anaheim centre Andy McDonald, who had two assists. "In the second and third, we battled a lot harder and were more intense on the puck but for whatever reason, we didn't have that intensity early on and it hurt us."
Anaheim continues to play without defencemen Chris Pronger (foot) and Francois Beauchemin (spleen), who missed their ninth and 11th games respectively. Niedermayer is also banged up with a stress fracture in his foot that will keep him out of next week's NHL All-Star Game.
The Ducks are now off for eight days before returning to action a week from Saturday.
"The way things have gone, maybe that's what we need, some time to clear the head," said McDonald. "Mentally when we come back, maybe we'll be a little more refreshed and physically this will give guys a chance to heal up from any injuries that they have."
Trailing 3-1 headed to the third, Anaheim climbed back within a goal 1:29 into the period on Niedermayer's deflection. It was the 11th career two-goal game for Niedermayer, who has never had a hat-trick in his 15 NHL seasons.
The Ducks had a couple of dangerous opportunities to tie it late in the game but could not beat Calgary goaltender Miikka Kiprusoff, who finished the night with 22 saves.
"Kipper was great again tonight," said Yelle. "He made some great saves at the right time and gave us the chance to win."
Making his ninth start in a row with Jean-Sebastien Giguere out with a groin injury, Bryzgalov had 19 saves. The Russian has struggled in the past week giving up 13 goals on 72 shots in the four losses.
Notes: Calgary LW Kristian Huselius had an assist to extend his points streak to six games (five goals, four assists) . . . The Ducks picked up their NHL-leading 44th fighting major when George Parros fought Calgary's Eric Godard in the first period. Calgary is 4-0 this year in the games Godard has appeared in. . . . With 295 career goals as a Duck, RW Teemu Selanne is five goals away from tying Paul Kariya for the all-time franchise lead. . . . Calgary has outscored the opposition 86-55 at five-on-five.