Zetterberg has 12 goals and at least one point in all 14 of Detroit's games this season, and helped the Red Wings take all three games of a trip to western Canada for the first time in 21 attempts.
"We have such a great team and the whole team is playing really good right now," said Zetterberg, who leads the NHL with 24 points.
Alex Tanguay scored for Calgary, which ended its season-long seven-game homestand at 4-2-1.
"Detroit's a good team but all of us in here would agree we didn't play our best game and when you don't do that, you don't give yourself a chance at winning," Tanguay said.
"We weren't skating, we were nervous, and they are a team that moves the puck extremely well. You have to take away their time and space and we didn't do that tonight."
Zetterberg put the Red Wings ahead at 10:44 of the first period after Jiri Hudler tied it at 9:11.
With Detroit leading 3-1 in the third period, Zetterberg connected again on a power play at 10:44 to put the game away. The Flames had dominated play at that point in a bid to get back in the game.
"It was one of those games when we got the puck, we got the puck in the net," Detroit coach Mike Babcock said. "They had a good push in the third period but I thought we were pretty good in the first two and then we capitalized on the power play."
Making his fourth start in a row with Dominik Hasek (hip) sidelined, Chris Osgood made 26 saves to improve to a perfect 7-0 on the season. Detroit has at least one point in Osgood's last 19 starts (14-0-5) dating to last season.
Daniel Cleary also scored for Detroit, which beat Vancouver 3-2 on Sunday and won 2-1 over Edmonton on Tuesday.
Osgood was not busy early but was tested often in the third period. In one sequence he stopped Daymond Langkow's dangerous backhand from the side of the net. Later, he managed to get his stick on Jarome Iginla's rebound after the Flames' captain had deflected one by Adrian Aucoin off the goal post.
"I'm confident and I'm feeling good when I'm playing," Osgood said. "I got that bounce off the post and then Iginla put it off my stick. I've had some breaks along the way too but you have to get to that kind of record."
Calgary went 0-for-7 on the power play, including 38 seconds with a two-man advantage in the second period.
Osgood's last regulation loss was 4-2 to the Los Angeles Kings on Jan. 6. He is 21-13-5 in his career against the Flames. The only other two teams he has more victories against are Dallas (25) and Chicago (24). ... Marcus Nilson (hip) returned for Calgary after missing one game. ... Detroit D Niklas Kronwall (groin) missed his third game. ... The Red Wings were outshot for just the second time in 14 games, 27-26.
Copyright by STATS LLC and The Associated Press
Arena: Scotiabank Saddledome Location: Calgary, Alberta
Referees: Gord Dwyer, Dave Jackson Linesmen: Mike Cvik, Brian Mach
Attendance: 19,289 (100.0% full)
Team Stat Comparison
Power Play Goals
Power Play Opportunities
Shots on Goal
Alex Tanguay (4)
Assist: Jarome Iginla
Jiri Hudler (3)
(Power Play) Assists: Brett Lebda, Mikael Samuelsson
Henrik Zetterberg (11)
Assists: Pavel Datsyuk, Nicklas Lidstrom
Daniel Cleary (2)
Assists: Kris Draper, Nicklas Lidstrom
Henrik Zetterberg (12)
(Power Play) Assists: Pavel Datsyuk, Brian Rafalski