Iginla also set up third-period goals by Dion Phaneuf and Daymond Langkow as the Flames battled back from a 2-0 deficit to improve to 11-7-2.
"Going into that third period, we wanted to keep this thing going," Iginla said. "We should always be desperate like that."
Mikko Koivu and Randy Robitaille scored for the Wild, who lost their third straight to drop to 8-9-2.
After getting just 17 shots on net through two periods, the Flames broke out with a club-record 25 in the third.
"We were skating better," Iginla said. "We were probably a little bit more determined. We created a lot more havoc around their net. We were more desperate."
Minnesota goalie Dwayne Roloson stopped 39 shots.
"I was just trying to give our guys a chance to win tonight," said Roloson, whose record dropped to 3-6-1. "I don't know what happened there in the third period. We got into a little bit of penalty trouble and they ended up scoring some goals on the power play. We've got to battle through that. We can't sit back when we're winning. We've got to go after them."
Playing in just his fifth game of the season after missing the first 14 with a knee injury, Koivu scored to put the Wild up 1-0 at 13:41 of the first period. Flames forward Jason Wiemer collided with defenseman Roman Hamrlik. As both lay prone on the ice, Wild forward Derek Boogaard promptly picked up the puck and fed it to Pierre-Marc Bouchard behind the net. Bouchard quickly threw the puck out to the slot for Koivu, who wristed a shot into the far corner past Calgary goalie Miikka Kiprusoff.
On a late second-period power play, Minnesota forward Robitaille fired a shot past Kiprusoff to put the Wild up 2-0. Calgary had killed off a pair of two-man advantages before surrendering the goal with 1:16 remaining in the second period.
The Flames responded with a power-play goal of their own early in the third period when Phaneuf wristed a perfect shot into the top corner past Roloson, who was being screened by Tony Amonte on the play.
Minnesota had a chance to tie the game with another two-man advantage for the final 34.2 seconds of the game. Pascal Dupuis had the best chance, but he shot the puck wide as time expired.
"Nothing went well for us in the third," Dupuis said. "We didn't forecheck enough. We didn't put enough pressure. They took advantage of that and came hard to the net and they had big goals."
With 5:54 to play in the third, Iginla backhanded a perfect pass from behind the net right onto the stick of Langkow, who roofed a shot over Roloson's glove hand.
Langkow, who ended a 13-game goal-scoring drought, commended Iginla for setting him up perfectly with a backhand pass from behind the net.
"Not too bad," said Langkow. "It was a nice play. All I had to do was put it into the empty net. I'm glad I could chip in tonight. It was a big win for us."
Then with Kyle Wanvig in the penalty box for hooking, Iginla snapped a quick shot into the far corner past Roloson to put the Flames up 3-2.
"That was a big boost," said Iginla. "I just shot it. It was nice to see that go in."
Notes: With his three points, Iginla had multiple points for the fourth straight game. He also has points in 11 of his last 13 games. Phaneuf and Amonte also extended their point scoring streaks to four games. ... Minnesota is 7-1 when scoring three or more goals this season. ... Heading into the game, the Wild had yet to allow more than one power play goal in any game this season and were ranked first in the league in penalty killing (91.4 percent) heading into the game.
|Mikko Koivu (2) ASST: Pierre-Marc Bouchard (10), Derek Boogaard (3)|
1 - 0 MIN
|PPG - Randy Robitaille (4) ASST: Daniel Tjarnqvist (1), Pascal Dupuis (6)|
2 - 0 MIN
|PPG - Dion Phaneuf (5) ASST: Tony Amonte (8), Chris Simon (3)|
2 - 1 MIN
|Daymond Langkow (4) ASST: Jarome Iginla (10), Chris Simon (4)|
2 - 2 Tie
|PPG - Jarome Iginla (11) ASST: Roman Hamrlik (11), Miikka Kiprusoff (1)|
3 - 2 CGY
|Power Play %||15.8%||18.8%|
|% on Road||11.1%||19.0%|
|% at Home||19.6%||18.7%|
|Jason Wiemer Hi-sticking against Scott Ferguson|
|Matt Foy Too many men/ice - bench|
|Jordan Leopold Hooking against Brian Rolston|
|Brian Rolston Holding against Stephane Yelle|
|Chuck Kobasew Hooking against Stephane Veilleux|
|Kyle Wanvig Hooking against Stephane Yelle|
|Tony Amonte Slashing against Alex Henry|
|Marcus Nilson Hooking|
|Daymond Langkow Hi-sticking against Filip Kuba|
|Daymond Langkow Hi-sticking against Filip Kuba|
|Stephane Yelle Tripping against Kyle Wanvig|
|Pierre-Marc Bouchard Hooking against Jarome Iginla|
|Brian Rolston Holding against Tony Amonte|
|Randy Robitaille Holding against Chuck Kobasew|
|Willie Mitchell Hooking against Darren McCarty|
|Pascal Dupuis Hooking|
|Jordan Leopold Tripping against Randy Robitaille|
|Kyle Wanvig Hooking against Andrew Ference|
|Stephane Yelle Holding against Pierre-Marc Bouchard|
|Jarome Iginla Hi-sticking against Randy Robitaille|
|Rhett Warrener Cross checking against Brent Burns|