Calgary Flames Wayne Primeau, right, loses his helmet as he fights with Atlanta Thrashers Garnet Exelby during the first period. (CP PHOTO/Jeff McIntosh)
Alex Tanguay also scored for Calgary (30-19-8), which moved ahead of Vancouver and Minnesota into top spot in the Northwest Division. Denis Hamel, who was claimed off waivers from Ottawa on Saturday, replied for Atlanta (30-21-9). Calgary, which had been winless in four, scored three times against the league's worst-ranked penalty kill to take an early 3-0 lead.
Langkow opened the scoring at 2:59 by nicely deflecting Dion Phaneuf's point shot out of mid-air and past Kari Lehtonen.
At 6:19, Iginla one-timed in a centring pass from Craig Conroy. Langkow made it three goals on four shots at 13:59 when he converted a pass from Kristian Huselius.
Both Iginla and Langkow had entered the game mired in slumps. The pair had combined for just three assists during the Flames season-high, four-game losing streak.
Atlanta has now surrendered 11 power-play goals in its last five games. The Thrashers have just one win in seven (1-5-1) and have seen their Southeast Division lead over Tampa Bay fall to just three points. The Lightning have two games in hand.
Meanwhile, Calgary continues to excel on home ice. The Flames are 9-0-1 in their last 10 and lead the league in wins with a 23-5-1 record.
The score remained 3-0 on Tuesday until halfway through the second period, when a turnover by Flames defenceman Mark Giordano led to Atlanta's only goal.
Giordano's clearing attempt around the side boards was intercepted by Greg de Vries, who whipped a shot on goal. Miikka Kiprusoff made the save but the rebound kicked straight out to Hamel, who buried his fifth of the season.
It took only 16 seconds for Calgary to get that goal back. Intercepting the puck outside the Atlanta blue-line, Iginla slid the puck ahead to a breaking Tanguay. He fired a quick shot from the wing and beat Lehtonen.
Kiprusoff bounced back with a better effort after getting pulled 13 minutes into Sunday's loss in Detroit having given up three goals on 14 shots.
Although not overly busy, he was solid in making 21 stops to improve to 28-16-7. His best save came in the second when Marian Hossa burst in on a short-handed breakaway but was thwarted from in-close.
Lehtonen recovered nicely from his rocky start to finish the night with 23 saves.
The Flames play again on Thursday with a scheduling quirk that sees them play three consecutive games against Colorado - the first two games at home.
Atlanta is off until Saturday, when it plays in Ottawa. They wrap up their season-high six-game road trip in Carolina next Tuesday.
Notes: Calgary D Rhett Warrener returned after missing three games with an arm injury . . . Also back in the lineup for the Flames was RW Tony Amonte after being a healthy scratch Sunday, the first game he had missed all season. Amonte has no goals in his last 14 games . . . Flames C Stephane Yelle (foot) did not play and is listed as day-to-day . . . de Vries played in his 142nd consecutive game, tying him with Slava Kozlov for the longest streak in Thrashers franchise history . . . Calgary has never lost at home to the Thrashers, going 4-0.