The Canucks spotted the Flames a 1-0 lead in the first period, then proceeded to score the game's next five goals as they improved to 10-0-2 against Calgary since October 2009.
Roberto Luongo made his first start since Nov. 13 and responded by turning aside 21-of-22 shots, earning the victory.
Henrik Karlsson made 27 saves in the Flames' loss. Alex Tanguay got Calgary's only goal.
Penelope Cruz named 2013's 'Best Body' by Fitness magazine
Susan Sarandon: I was stoned at almost every awards show