Calgary improved to 7-1-3 and have now collected points in 10 straight outings.
The last time the Flames picked up a point in 10 consecutive games was during the 2017-18 season.
The Rangers, who were coming off 6-5 OT loss to the Oilers 24 hours earlier, fell to 6-3-3.
Johnny Gaudreau scored a pair, while Sean Monahan, Milan Lucic, Matthew Tkachuk and Brad Richardson - with his first as a Flame - also tallied for the homeside.
With his first goal, Gaudreau passed Gary Roberts for ninth spot in franchise scoring (506 points).
Tkachuk collected three helpers in the win. His goal was an absolute thing of beauty, taking the pass, spinning and putting his stick between his leg and firing the puck home. See below for a looksie.
The Flames kept true to their season-long MO, outshooting the opposition to start the game with a 5-0 edge before the Rangers finally recorded their first 6:42 into the contest.
The teams went back-and-forth with scoring opportunities early, Markstrom making a phenomenal stop on Kevin Rooney's tip from right in the blue paint.
The Flames opened the scoring at the 16-minute mark on the powerplay when Elias Lindholm whipped a pass to Tkachuk, who sent it back across the ice to Monahan who one-timed it into an open cage as Igor Shesterkin slid across late with his glove-hand stretched out in vain.
Lindholm now has points in four straight games and has recorded at least one point in every game this season except for the team's win over the Devils in Newark on Oct. 28.