Both advantages were set up by the speedy Lombardi, who twice drew hooking penalties as he attempted to go around the Avalanche defense. Those set up the key man-advantage goals.
"That's what it's about," he said. "We're drawing penalties, and our power play goes out there and scores both times."
First, Ruslan Salei got caught flat-footed and had to haul Lombardi down. That enabled Langkow to open the scoring at 8:19.
The Flames were short-handed each time Lombardi was hooked.
"He can draw penalties back for us because of his speed," Flames coach Mike Keenan said. "He demonstrated that well. He can draw penalties in a penalty-killing situation, and probably as importantly, come up with offensive opportunities, as well, without risking anything defensively."
Calgary's power play, which finished 2-for-4, entered the night ranked 29th in the NHL at home. It was the first time in 30 home games, dating to Oct. 30, the Flames have multiple power-play goals.
The Flames move two points ahead of Colorado and into a tie for sixth place in the Western Conference with Vancouver, which won 4-1 in Edmonton. The Flames and Canucks moved to within one point of Northwest Division-leading Minnesota, which will play the Canucks on Friday and Calgary on Saturday.
"This was huge for us," Lombardi said. "We're chasing Minnesota right now and those guys are doing the same. It's a good start in the right direction. We've got to keep going and keep looking forward to the next game."
After a disappointing 1-3 road trip, Calgary played as it did before leaving home. The Flames are 5-0-2 in their last seven at home and play three of their next four there before wrapping up the season with four road games.
Ben Guite scored the lone goal for Colorado.
"They played their typical game," said Theodore, who made 26 saves. "They got the lead and then kind of closed the middle. We didn't have too much chances."
After a blistering stretch in which the Avalanche won eight of nine, they have lost three straight. They hope to have Peter Forsberg (groin) and Paul Stastny (flu) back in the lineup Saturday at Edmonton.
"We have to come out a lot harder than we did," Guite said. "They came out hard and we didn't match it. We just sat there watching and the next thing we knew we were down 2-0."
Calgary limited the Avalanche to just 16 shots.
"These are tough playoff games," Keenan said. "When we can shut a team down it shows that we've got a real strong committed defensive effort. For playoff competition, that's what you need."
The Flames kept the Avalanche to just 10 shots through the first 40 minutes, but Colorado got on the scoreboard in the third.
Kiprusoff finished with 15 saves to improve to 36-22-10.
The next assist for Colorado's Joe Sakic will be No. 1,000 in the NHL. ... Calgary's power play had scored two or more goals in four of its first eight home games. ... Calgary's lineup changes included the return of C Mark Smith, who was scratched the previous seven games.