With Andrew Mangiapane leading the way with his first-career hat trick (four points in all), the Flames rallied from a 3-1, third-period deficit to knock off the Ducks 6-4 and sweep the season series.
Cam Talbot was once again stellar, securing his ninth win of the campaign with 26 saves.
In all three appearances against the Ducks this year, Talbot stopped 99 of the 103 shots he faced.
With the game tied late in the third period, Matthew Tkachuk gave the Flames their first lead of the day with his 20th of the year. Cam Fowler tried to put the puck back to his defence partner, but Tkachuk read the play well, intercepted the pass and put a quick shot into the pads. Ryan Miller made the initial block in tight, but Tkachuk stayed with it, bowled his way to the blue paint and shovelled it home to put the Flames up 4-3 with 7:01 to play.
Sean Monahan made it a 5-3 game at 14:03 as another turnover landed right in his wheelhouse, and the sniper made no mistake with a quick shot from the slot.
Mangiapane rounded out the scoring with his hat-trick marker - into the empty net - with 56.5 ticks on the clock.
Sam Bennett had the other goal for Calgary - the tying marker after Mangiapane kick-started the comeback early in the final frame. Devin Shore scored one late for Anaheim, but by then, the result was well in hand.
With the win, the Flames improve to 31-24-6 on the year.
In what was a quiet opening period, Rasmus Andersson had the best chance for either side when he scooped up a loose puck at the point and uncorked a blistering, 65-foot slapshot that rang off the iron. Ryan Miller - screened by two of his own players, who lined up in the shooting lane - picked it up late, reacting only after the puck had caromed safely into the corner, as Andersson looked to the rafters.
While that one didn't count, shots on goal did favour the homeside 12-10 after one.
It was much more vibrant start to the second period, but after some extended Flames pressure deep in enemy territory, an ill-advised pass into the middle turned the puck over and gave the visitors the game's opening goal.
Nick Ritchie made a great read inside his own blueline, intercepting a Sam Bennett pass, dusting it off and steering his linemate, Adam Henrique, off on a breakaway. TJ Brodie made a valiant effort to race back and disrupt the play, but Henrique pulled the puck to his backhand and slipped it through the wickets to give the Ducks a 1-0 lead at 5:53.
However, the Flames levelled the score less a minute later, as Mangiapane popped home his 11th of the year.
Some intense o-zone pressure led to Noah Hanifin gathering up a loose puck and letting a shot fly from the high slot. Miller made a great blocker save, but couldn't corral the rebound, punching it to his left where Mangiapane was lurking. No. 88 made short work of it, pumping it short side.
But with seemingly all the momentum in favour of the locals, another turnover proved costly.
This one, from only a few feet out.
Hanifin coughed it up on the breakout, giving Jakob Silfverberg a clear path to the net from inside the far circle. The winger made a beautiful move to the forehand, tucking it around the out-stretched pad to give the Ducks a 2-1 lead at 10:37.
Through two periods, the Flames were out-shooting the Ducks 30-20 and had more than twice the number of high-danger scoring chances (11-5).
The Ducks opened up a two-goal lead early in the third when Nic Deslauriers - with an assist from Michael Stone's right foot - beat Talbot from a sharp angle.
But the Flames weren't done.
Mangiapane replied at 4:46, knifing his way through the middle and showing great patience in tight, before elevating a backhander that sailed clean over the sprawling netminder for his second of the night.
Bennett tied the game at three only 19 seconds later as he stopped up inside the far circle, used the defender as a screen, and fired a laser beam - bar down - over Miller's left shoulder for his eight of the year to complete the comeback.
THEY SAID IT:
MANGIAPANE ON HIS HAT-TRICK/FOUR-POINT NIGHT:
Confidence is huge in this league. Every game, whatever move you make, you're growing as a person and as a player. That's got to be my game and just keep growing as a player."
MANGIAPANE ON WHAT'S MADE HIM SUCCESSFUL:
"Puck management was big for [our line]. Just play north - chip it in, going after it and playing hard on the forecheck and funnelling pucks to the net. That's all key to our game, and that's what we showed in the third. ... That's key going forward - playing a full 60. Going down the stretch here, we know each game is going to be a tough one. It's going to be close. We've got to keep playing hard, playing a full 60."
"I thought for the most part we dominated the first two periods. ... It was 2-1 going into the third. I thought we had a little momentum going into the third. Had a powerplay, some shots, and then we get one early and it takes a lot of life out of the building. It was tough to have that goal go in for them. ... I thought Mang's goal to make it 3-2 was huge, and then Benny's to make it 3-3 was enormous. Then we had all the momentum in the world after that, so it was nice."
TKACHUK ON MANGIAPANE'S GREAT GAME:
"He was all over the puck tonight. Him and Backs were awesome. Mang, the way he's able to protect it down low for not being a huge goal, is pretty impressive. He's strong on his feet, strong on his stick, and he makes great plays. Had a one-on-one battle on his first goal. The second one, a great move, does backhand and puts it cheese. ... I thought he was awesome tonight and I'm sure he would tell you that was an important game for him and gave him lots of confidence."
"We needed a win at home badly. I thought our team played well through the whole game - we were still getting lots of looks - but we just stuck with it, we kept battling, and that's a huge win for us on home ice and now we're going to get some mojo and start rolling again."
"He's one of those guys that, if the puck is turning the other way, he's putting his nose down and he's skating until he catches up. He wasn't just going on the offensive side tonight - he was going on the defensive side as well, and he drew that big penalty for us. He was kind of all over the ice tonight."
"Nothing. We stayed with it. We felt after the second period that we'd played a pretty good hockey game. We hadn't given up much defensively. He made some saves, but we wanted to make sure that we stuck to our game and we kept the puck moving forward and tried to be direct to the net and get bodies there. That was what we were talking about between periods. Credit to the guys for sticking with it."
WARD ON BOUNCING BACK AFTER SATURDAY'S SETBACK:
"They did a really good job just focusing on what they could control on the ice. I think that's the key. At this time of the year, it's play your game, and it's just about competing. If you can do those two things, you can keep yourself in the mix. I thought our guys did those two things tonight. I thought our compete was much better and I thought we stuck with our game much better than we had before in our last game."
Prior to the game, the Flames recalled centre Glenn Gawdin from the Stockton Heat. Gawdin, 22, is having a terrific sophomore season with the AHL club, posting 42 points (15G, 27A) in 46 games, and was recently named a league all-star for his efforts. Gawdin joined the Flames organization in 2018 when he signed as a free agent, shortly after capturing the Ed Chynoweth Cup as a member of the Swift Current Broncos. The Richmond, B.C. native had 125 points (56G, 69A) that year en route to the WHL title and playoff MVP honours. ... As a result of Gawdin's recall, veteran pivot Derek Ryan was placed on injured reserve, retroactive to Feb. 13. Ryan has missed the past two games due to illness, but will be eligible to play in the Flames' next tilt - Friday, against the Boston Bruins, if he's healthy enough to play by then.
Here are the forward lines, D pairings and goalie to start the game:
Johnny Gaudreau - Sean Monahan - Elias Lindholm Milan Lucic - Sam Bennett - Dillon Dube Matthew Tkachuk - Mikael Backlund - Andrew Mangiapane Zac Rinaldo - Mark Jankowski - Tobias Rieder
Noah Hanifin - Rasmus Andersson TJ Brodie - Michael Stone Oliver Kylington - Alexander Yelesin
Annnnnnnd exhale. With a gruelling stretch of eight games in the past 13-and-a-half days now behind them, the Flames get a bit of a break before closing out this three-game homestand on Friday against the NHL-leading Boston Bruins (click here for tickets). Following that, the team heads out on a season-long, five-game road trip that will have stops in Detroit, Boston, Nashville, Tampa Bay and Florida - with the NHL trade looming in there as well.