Rangers reinforced their status as the dominant team in Scotland with a comprehensive and entertaining 4-1 victory over 10-man Celtic at Ibrox, to move within two games of an Invincible league season.
In a crazy seven-minute spell of the first half, Mohammed Elyounoussi hit the crossbar for Celtic, before Rangers took the lead through Kemar Roofe's neat finish. Callum McGregor was then sent off for a second booking in the build-up to the goal.
Celtic immediately equalised through Odsonne Edouard, but Alfredo Morelos quickly restored the champions' lead with a thunderbolt finish.
Roofe scored his second soon after half-time to give Rangers breathing space, but David Turnbull, Edouard, Kristoffer Ajer and Elyounoussi all spurned good chances for Celtic that would have set up an exciting finish.
- How the teams lined up | Match stats
- Scottish Premiership latest news | Get Sky Sports
- Scottish Premiership fixtures | results | table
Instead, Jermain Defoe came off the bench late on to add a fourth in injury time for his first Old Firm goal, as Rangers rubbed salt in the wounds of the deposed champions.
While Steven Gerrard's side will confirm an unbeaten league campaign - and perhaps hit the 100-point mark - if they avoid defeat against Livingston and Aberdeen, Celtic must turn their focus quickly to appointing Neil Lennon's replacement. Having started the season bidding for an historic tenth successive title, they instead suffered the ignominy of failing to beat their rivals during a campaign for the first time since 1999-2000.
How Rangers dismissed their Old Firm rivals
With the title long since sewn up, and both sides out of the Scottish Cup, it had been one of the most underwhelming build-ups to an Old Firm game in living memory, but the match more than made up for that.
The visitors began brightly with some promising forays on the left flank that ultimately led to nought, with Jack Simpson - making his derby debut at the heart of Rangers' defence - starting confidently to stand tall against the danger.
Celtic had dominated in the early exchanges on the last two trips to Ibrox, only for Rangers to show a clinical touch when it mattered. It appeared this game might follow a similar pattern as the champions broke clear followed a mistake by Jonjoe Kenny; Tavernier's delightful cross was laid on a plate for Morelos, only for the Colombian to miskick as Kenny dived in front of him.
Simpson was booked after an innocuous clash with Edouard, before McGregor joined him five minutes later after halting Kent's progress, but the game had been lacking the spice or bite normally associated with these fixtures - then from nowhere, it exploded into life.
Elyounoussi seized possession in midfield and strode forward unchallenged, before unleashing a powerful shot that was goal-bound, only for Allan McGregor to get a fingertip on it to deflect it onto the crossbar. Moments later, Celtic were dealt a double blow as they fell behind.
Rangers worked space 40 yards from goal and Kamara slipped a ball through before being taken out late by McGregor. Referee Nick Walsh played advantage as Aribo crossed from the left, Kent sent the ball goalward and Roofe chested the ball past Scott Bain. As Rangers celebrated, Walsh produced a second yellow card for McGregor and Celtic were, for the second time at Ibrox this season, a man light.
It was a period of play that encapsulated Celtic's disappointing season, but they responded immediately. Turnbull's corner was headed back across goal by Ajer, and Edouard was quickest to react in the six-yard box, nodding home despite the desperate efforts of Davis to clear off the line.
The game was now wide open. Aribo forced Bain into a good save at his near post, before Edouard blocked Goldson's goal-bound header. Yet Rangers soon regained the lead thanks to Morelos and his first goal at Ibrox against Celtic.
Welsh's clearing header was picked up by Kamara who fed Morelos on the right edge of the box. He was slightly fortunate to cut inside Brown with a nutmeg but his shot was powerful and high to Bain's left at the near post; it was a stunning finish, but Ajer's limp attempt to block the shot did not help his goalkeeper.
With the lead and a man advantage, Rangers pinned Celtic back at the start of the second half, without initially producing a decisive moment. Kent left Taylor for dead with some sublime skill, but Roofe could not take advantage, as Celtic struggled to get out of their own half. When they did, Turnbull glanced Forrest's header past the far post when unmarked.
It was a costly miss, as Rangers pulled further clear after 56 minutes through Roofe. It was he who fed Barisic on the left, and then drifted in unmarked to head past Bain from eight yards. The clinical finishing which had once been Celtic's hallmark was now being shown by their rivals.
The end of the road in Old Firm matches for the Celtic captain had come. Scott Brown, playing in his 44th and final derby, had been largely a bystander as the game raged around him, and he was replaced on the hour by Ismaila Soro, with Forrest also being withdrawn for Ryan Christie. Celtic's biggest concern now seemed to be limiting the damage to the score and their pride, but they were still capable of creating clear-cut chances.
Edouard nearly produced a moment of magic as he skinned Simpson, but his cross-cum-shot trickled wide of the far post. Ajer then hooked the ball wide after a typical surging run from deep, before Elyounoussi failed to apply a back-post finish to Kenny's cross.
Defoe had the final say as the score-line became emphatic, turning Stephen Welsh inside out before passing the ball into the net past Bain. Celtic's inability to take chances in the big moments, a repeated failing all season, had once again returned to haunt them, as Rangers made it six derbies without defeat stretching back more than eighteen months.
Praise for Roofe
Rangers striker Kemar Roofe told Sky Sports: "It was a big game for us, the way this month has been, we've been disappointed. To wrap up this season and also remember we are champions, but it's been so long ago we've kinda forgot about that.
"On and off the pitch things have not been going the right way for me, but I've been preparing for this game for a long time, it was an important one.
"We won the league a long time ago. Now it's about being unbeaten."
Sky Sports' Kris Boyd: "It wasn't just his goals today but his all-round play. He had a really good afternoon.
"He has scored big goals for Rangers this season. If he gets a good pre-season, he could be a big player for Rangers going forward. His first goal was excellent and his second was equally good."
What the managers said
Rangers manager Steven Gerrard: "It was an important game and it was a really strong performance. We needed Kemar, Alfredo and Ryan to be the difference for us in the final third and we ran away with it in the end.
"From the team's point of view, consistency is something we are always striving for. Kemar has had a mixed few weeks but he responded in a fantastic way. His two goals were fantastic and he played big for us. Over the course Kemar has certainly delivered.
"These games are always decided by the big moments. And I thought the referee got the decisions right because he [McGregor] was stopping a promising attack."
Celtic interim manager John Kennedy: "It's a sore one. Going down to ten men put has on the backfoot. We have still managed to create, Rangers were more clinical once again, but the sending off was the big point of the game.
"It's the turning point. The second booking, he is on a yellow, he goes to ground and it's then a red card. That's not a problem. It's the first one…
"I asked the referee at half-time 'what did you book McGregor for?' and he said 'a reckless tackle'. I don't see anything reckless in it. He was on his feet and making a genuine attempt for the ball. There's no consistency there and that is what I am most disappointed with. Red cards can happen but at least make the right calls."
Petrov: I was looking for more from Celtic
Stiliyan Petrov on Sky Sports:
"The gap is 23 points, the performances have been flat, the season has been flat. The excitement for me is what comes next.
"Today, I was looking for more. I was looking for fight. But we saw a flat performance again. It's a huge job, on and off the pitch."
What's next?
Rangers travel to face Livingston in the Scottish Premiership on Wednesday at 6pm. Celtic host St Johnstone on the same evening at 7.45pm.