Calle Järnkrok gjorde sin första poäng i Calgarytröjan när han spelade fram Noah Hanifin med en crosspassning genom mittzonen till 1-0-målet efter knappt fem minuter.
Sedan spelade Mikael Backlund fram Matthew Tkachuk till 2-0 tre minuter senare och när Rasmus Andersson sköt 3-0 efter knappt 14 minuter var Canucks ett slaget lag.
Det blev inte bättre av att Elias Lindholm ökade på ledningen till 4-0 tidigt i den andra perioden.
När sedan Johnny Gaudreau gjorde 5-0 sex minuter in i den tredje perioden väntade alla bara på slutsignalen.
Flames tog revansch
Vancouver lyckades reducera två gånger genom Matthew Highmore och Brock Boeser, men var aldrig i närheten av att komma ikapp.
Elias Pettersson hade assist på Boesers fullträff, som kom i powerplay.
Det var Elias 25:e assist den här säsongen och 43:e poäng på 61 matcher.
Båda lagen kom till nedsläpp med 0-1-förluster senast, men det var bara Flames som var redo när pucken släpptes.
– Vi var taggade för att ta revansch efter den stora förlusten senast här i Vancouver och hade pratat om att komma ut starkt från första nedsläpp, sa Rasmus Andersson i en tv-intervju med Sportsnet i den första periodpausen.
Calgary släppte sedan aldrig greppet om tillställningen.