Rangers kept their Third Division title challenge on track with victory at Links Park.
Montrose took an early lead when Lloyd Young volleyed home from six yards, but Rangers levelled through a Lee McCulloch penalty.
A quick-fire double from Kevin Kyle and Dean Shiels put the visitors in control midway through the second half.
David Gray pulled a goal back for the home side, but Robbie Crawford scored a fourth at the death.
The home side were first on the attack, and Garry Wood sent a looping shot that was just a few feet over the crossbar of Neil Alexander.
The slippery synthetic surface was making it difficult for players to control the ball and passes were being over-hit by both teams.
The opening goal came after 15 minutes and it was the home support who were on their feet.
Stephen McNally took a throw-in on the right that drifted over the heads of the Rangers defence. Young was lurking six yards out and he sent a volley beyond Alexander into the net.
At this stage the scoreline reflected the dominance of the home team.
However, the goal appeared to inject some zest into Rangers' play.
Andrew Little was denied an equaliser before Shiels had a free-kick deflected onto the post.
Rangers' pressure finally paid off midway through the half when they were awarded a penalty.
Winger David Templeton went down inside the box after a challenge by McNally and McCulloch made no mistake from 12 yards.
Rangers had won the previous six meetings between the sides, scoring 21 goals in the process and conceding only two, and they came close to taking the lead when Lewis Macleoad was sent through one-on-one with keeper Sandy Wood.
The youngster looked set to score but keeper Wood dived low to his right to deny Rangers.
In the opening minute of the second half Kyle squandered an excellent chance to put Rangers in front.
The former Kilmarnock and Hearts striker had a clear view on goal from 10 yards out but fluffed his effort wide.
This was proving to be a far from an easy afternoon for Rangers manager Ally McCoist as he watched on from the sidelines, and some disgruntled fans made their feelings known to the players.
McCoist made a change just after the hour mark. Templeton had found it difficult to break down the Montrose defence and he was replaced by Barrie McKay.
Little was next to spurn a good chance for Rangers, when Kyle sent a chip over to the back post and he headed wide when he really should have hit the target.
But the visitors did move ahead when Shiels put the collected the ball on the edge of the 18-yard box and played in Kyle who slid the ball into the corner of the goal.
And Rangers' advantage was doubled a minute later when Shiels netted from just inside the box.
Montrose, though, refused to lie down and pulled one back when substitute Gray sent a wonderful, looping shot over Alexander into the net.
And the Angus club came within inches of an equaliser when Wood was clean through only for his effort to come crashing back off the crossbar.
Rangers wrapped up the points in the final minute when substitute Crawford fired home from 16 yards.
The large Rangers support left Links Park in a happy mood but Montrose can be extremely proud of their team's performance on a cold but sunny winter's afternoon.