A single first-half goal by Ryan Jack - his first for the club since signing from Aberdeen - was enough for Steven Gerrard's side as he inspired his team to a victory over his old boss at Liverpool Brendan Rodgers.
The result ended a 12 match unbeaten run in Old Firm games for Rodgers and was greeted with jubilant scenes at Ibrox. It moved Rangers level with Celtic at the top of the Premiership.
It means Gerard has succeeded where the previous seven Rangers managers had failed in picking up a league win over the old enemy.
"This moment is all about the supporters," said Gerrard. "They have been through a lot. We should have it won the game more comfortably - we were superb today. We were brave and we played with courage and belief. There is still a lot of work to do but the first half of the season has gone really well."
Celtic may have a game to spare but the result ends a 10-game run for Rangers without a league win over their city rivals. The teams are now level on points at the top of the SPL but Celtic have a superior goal difference.
Gerrard's side dominated the game for long periods against the reigning Champions and can consider themselves unlucky not to have won with more. They started both halves at a terrific pace and Celtic rarely looking like equalising apart from having a goal disallowed midway through the second half. A through ball from Ryan Christie enabled Callum McGregor to shoot past goalkeeper Allan McGregor and into the net but the flag was already up.
Rangers had won just two of their last six league games but ended a 10-match winless streak against Celtic in the Scottish Premiership - their longest ever run without a victory in the Old Firm derby in the competition.