Rangers moved four points clear of Celtic at the top of the Scottish Premier League with an inspired display against third-placed, 10-man Hearts.
Nikica Jelavic fired Rangers in front in 23 minutes from a smart Steven Davis ball, then Kyle Lafferty smacked in a second from close range.
Gregg Wylde crossed for Davis to head a third before half-time.
Hearts captain Eggert Jonsson was sent off for a lunge at Jelavic then Ryan Stevenson conceded a cruel own-goal.
The match kicked off amid an atmosphere of renewed optimism for the home fans, the product of Celtic's defeat by Inverness on Wednesday and the successful, eventual, completion of Craig Whyte's takeover of the club.
Hearts, for their part, were in need of a point to secure third place in the league and a Europa League place with two games remaining.
Walter Smith named an unchanged side from last week's 5-0 win at Motherwell, while the Jambos drafted David Obua and Ryan McGowan into their team.
In the eighth minute Jelavic cut across the 18-yard line and, despite being off-balance, managed to get a shot away that rolled past MacDonald's right-hand post.
As ever when league titles are on the line, nerves play a part.
Twice in the opening 20 minutes Rangers fans had cause for a sharp intake of breath when David Templeton raced through only to be stopped by David Weir, illegally, then Madjid Bougherra with a fine tackle.
Both sides were showing terrific commitment, with referee Iain Brines doing his best to keep a lid on the fraying tempers midway through the first half, though he did lose patience with Ibrox captain Weir for a late challenge on Hearts playmaker Rudi Skacel.
Rangers made the breakthrough after 23 minutes. Davis spied Jelavic peeling away from his markers to the left and pinged a 30-yard ball on to his toe.
The Croat's control and finish from a tight angle were further proof of his value to Rangers' title charge, though MacDonald will blush at the way the ball squeezed between his body and arm.
Ian Black's shot from 30 yards rasped through the busy Rangers penalty box and was blocked by Allan McGregor who dived low to his right.
The Scotland keeper was quickly to his feet to launch a throw to Davis. The Northern Irish midfielder collected the ball and dashed forward with four team-mates in support.
Davis passed to overlapping full-back Steven Whittaker who flashed a low ball across the face of the goal and through the legs of Steven Naismith - offside at the edge of the six-yard box.
Wylde sent the ball back into the danger area where Lafferty timed his run well to meet the ball and send a shot past McDonald from eight yards.
Goal difference may yet decide the destination of the SPL trophy. Celtic were a point behind at kick-off but five goals better off, so a third goal was met with an enthusiastic roar around the stands.
Maurice Edu won the ball in midfield and passed to Wylde on the left.
He was too quick, too eager for Hearts forward David Obua and, once past the Ugandan, he clipped a cross that was deflected on to the head of Davis, his timing and finish superb.
Black was the victim of a late challenge in 54 minutes by Whittaker, a sign that the intensity of the game had not relented.
Lafferty drew warm applause for a confident surge with the ball into the Hearts penalty box before play was disrupted by injury and acrimony.
Stephen Elliott replaced Templeton 12 minutes into the second half as Hearts' young striker pulled up with a hamstring injury, most likely ending his season.
Hearts manager Jim Jefferies introduced Scott Robinson for the ineffective Skacel but within seconds Jonsson had received a red card for a brutal challenge on Jelavic that left the striker in a heap.
Edu and Naismith were booked for their parts in the stramash that followed.
Hearts were unable to test McGregor, the loss of Skacel and Templeton lessening their scoring threat and the red card for their captain reducing them to mere containment.
El-Hadji Diouf and Lee McCulloch took to the pitch as Jelavic and Edu were rested with 20 minutes to go.
A shot from Sasa Papac in the 77th minute was blocked by the Hearts defence 10 yards from goal but Naismith, ever sharp, pounced on the loose ball, spun and cracked a shot off the upright.
The final goal was tough on the luckless Stevenson. Lafferty's shot from 18 yards was parried by MacDonald, who also palmed away Diouf's close-range follow-up.
However, the Senegalese forward's second attempt was deflected past MacDonald by the Hearts midfielder.
Hearts can remain confident of finishing third while Rangers are two wins away from the league title.
Live text and stats
Saturday, 7 May 2011
Stevenson (og) 84
03 Weir yellow card
16 Whittaker yellow card
07 Edu yellow card (McCulloch 72)
11 Lafferty (Healy 85)
14 Naismith yellow card
18 Jelavic (Diouf 71)
13 Obua yellow card
17 McGowan yellow card
04 Jonsson red card
08 Black yellow card
12 Templeton (Elliott 58)
19 Skacel (Robinson 61)
31 Mrowiec (Barr 78)
Ref: BrinesAtt: 46,178
Attempts on target
Attempts off target
90:00+3:12 The game is over, as the referee blows his whistle.
90:00+2:05 Booking Ian Black is given a yellow card.
90:00+1:32 Steven Naismith produces a right-footed shot from just outside the box that misses to the right of the net.
90:00+1:32 Booking David Obua goes into the book for dissent.
90:00+1:04 El-Hadji Diouf takes a shot. Blocked by Ryan Stevenson. Corner taken right-footed by El-Hadji Diouf.
89:51 Steven Naismith gives away a free kick for an unfair challenge on Ian Black. Free kick taken by Ruben Palazuelos.
89:36 The ball is swung over by Steven Naismith, Craig Thomson makes a clearance.
88:00 Free kick awarded for a foul by Stephen Elliott on Sasa Papac. Direct free kick taken by David Weir.
87:33 Scott Robinson has an effort at goal from just outside the penalty box which goes wide of the left-hand post.
86:48 The ball is delivered by Madjid Bougherra, Effort from deep inside the penalty box by David Healy hits the post.
86:25 Lee McCulloch takes a shot. Blocked by Ruben Palazuelos. The ball is swung over by El-Hadji Diouf, clearance by Ryan Stevenson.
86:15 Gregg Wylde crosses the ball, Ryan Stevenson manages to make a clearance.
83:40 Substitution David Healy comes on in place of Kyle Lafferty.
83:40 GOAL - Ryan Stevenson:Rangers 4 - 0 Hearts Ryan Stevenson puts the ball into his own net. Rangers 4-0 Hearts.
82:58 Kyle Lafferty takes a shot. Jamie MacDonald makes a save. El-Hadji Diouf takes a shot. Save by Jamie MacDonald.
82:28 Corner taken short by Gregg Wylde. The ball is delivered by Sasa Papac, Ian Black manages to make a clearance.
81:42 The ball is sent over by Madjid Bougherra, Ruben Palazuelos makes a clearance.
79:12 Short corner worked by Gregg Wylde.
78:13 The ball is swung over by Lee McCulloch, Ryan Stevenson gets a block in. Shot by Steven Whittaker from outside the area goes
high over the crossbar.
76:46 Substitution Darren Barr is brought on as a substitute for Adrian Mrowiec.
76:46 The ball is delivered by Kyle Lafferty, Sasa Papac takes a shot. Adrian Mrowiec gets a block in. Effort from inside the penalty
box by Steven Naismith strikes the post.
76:34 The ball is delivered by Sasa Papac.
74:24 The ball is crossed by Madjid Bougherra, Kyle Lafferty challenges Adrian Mrowiec unfairly and gives away a free kick. Jamie
MacDonald takes the direct free kick.
73:05 The ball is sent over by Gregg Wylde.
70:55 Substitution Lee McCulloch replaces Maurice Edu.
70:55 Substitution El-Hadji Diouf comes on in place of Nikica Jelavic.
70:48 Gregg Wylde produces a cross.
70:35 The ball is swung over by Gregg Wylde, blocked by Ryan Stevenson.
69:54 Outswinging corner taken by Gregg Wylde from the left by-line, clearance by David Obua.
66:57 The ball is delivered by Maurice Edu.
65:29 Nikica Jelavic concedes a free kick for a foul on Ian Black. Direct free kick taken by Jamie MacDonald.
64:00 Madjid Bougherra sends in a cross.
63:32 Corner taken left-footed by Gregg Wylde from the left by-line to the near post, clearance by Ryan McGowan.
62:44 Direct free kick taken by Steven Davis.
62:44 Booking The referee shows Maurice Edu a yellow card for unsporting behaviour.
62:37 Booking The referee books Steven Naismith for unsporting behaviour.
61:38 Sent off Eggert Jonsson is sent off.
61:02 Nikica Jelavic fouled by Eggert Jonsson, the ref awards a free kick.
60:18 Substitution Scott Robinson joins the action as a substitute, replacing Rudi Skacel.
58:37 Steven Whittaker crosses the ball, Jamie MacDonald makes a comfortable save.
57:17 Substitution Stephen Elliott joins the action as a substitute, replacing David Templeton.
55:57 The ball is crossed by Kyle Lafferty, save made by Jamie MacDonald.
53:53 Free kick crossed by Craig Thomson, Nikica Jelavic makes a clearance.
53:53 Booking Steven Whittaker receives a yellow card.
53:45 Ian Black fouled by Steven Whittaker, the ref awards a free kick.
52:29 Unfair challenge on Ian Black by Maurice Edu results in a free kick. Direct free kick taken by Craig Thomson.
51:27 Corner from left by-line taken by Gregg Wylde.
50:39 The ball is crossed by Steven Naismith, blocked by Adrian Mrowiec.
49:13 Ryan McGowan takes a shot.
47:56 Free kick awarded for a foul by Steven Naismith on Ian Black. Ian Black takes the direct free kick.
46:56 Corner taken by Gregg Wylde from the right by-line to the near post, Headed effort from inside the box by Nikica Jelavic misses
to the right of the target.
46:16 Sasa Papac takes the direct free kick.
46:16 Booking Booking for Ryan McGowan.
46:07 Ryan McGowan challenges Maurice Edu unfairly and gives away a free kick.
45:20 Kyle Lafferty handles the ball and concedes a free kick. Direct free kick taken by Eggert Jonsson.
45:01 The second half begins.
45:00+1:14 It is the end of the first-half.
43:26 The assist for the goal came from Gregg Wylde.
43:26 GOAL - Steven Davis:Rangers 3 - 0 Hearts Steven Davis finds the net with a headed goal from inside the box. Rangers 3-0 Hearts.
42:24 Craig Thomson concedes a free kick for a foul on Gregg Wylde. Direct free kick taken by Sasa Papac.
40:53 Free kick awarded for a foul by Ian Black on Kyle Lafferty. Direct free kick taken by Madjid Bougherra.
39:14 Assist on the goal came from Gregg Wylde.
39:14 GOAL - Kyle Lafferty:Rangers 2 - 0 Hearts Kyle Lafferty fires in a goal from inside the area to the bottom left corner of the goal. Rangers 2-0 Hearts.
39:05 Steven Whittaker sends in a cross,
38:03 Free kick awarded for an unfair challenge on David Obua by Maurice Edu. The free kick is delivered right-footed by Craig Thomson
from right channel, Maurice Edu makes a clearance. Shot by Ian Black. Allan McGregor makes a save.
36:48 The free kick is swung in right-footed by Ian Black.
36:48 Booking David Weir is shown a yellow card for unsporting behaviour.
36:40 David Weir concedes a free kick for a foul on Rudi Skacel.
34:49 Unfair challenge on Eggert Jonsson by Kyle Lafferty results in a free kick. Free kick taken by Jamie MacDonald.
34:16 Unfair challenge on Maurice Edu by Ian Black results in a free kick. Madjid Bougherra restarts play with the free kick.
33:55 Sasa Papac crosses the ball.
32:10 Maurice Edu crosses the ball, clearance made by Ryan McGowan. Corner taken left-footed by Gregg Wylde to the near post, save
made by Jamie MacDonald. Steven Davis takes a shot. Blocked by Ian Black.
28:01 Free kick awarded for an unfair challenge on Gregg Wylde by Craig Thomson. Allan McGregor restarts play with the free kick.
26:50 Kyle Lafferty gives away a free kick for an unfair challenge on Ian Black. Jamie MacDonald takes the free kick.
26:16 Steven Naismith produces a cross, clearance by Adrian Mrowiec.
25:52 Ryan McGowan delivers the ball, clearance by Steven Whittaker.
24:18 Ryan Stevenson is flagged offside by the assistant referee. Indirect free kick taken by Allan McGregor.
22:08 Steven Davis provided the assist for the goal.
22:08 GOAL - Nikica Jelavic:Rangers 1 - 0 Hearts Nikica Jelavic grabs a goal from inside the penalty box low into the middle of the goal. Rangers 1-0 Hearts.
20:12 The assistant referee signals for offside against Nikica Jelavic. Free kick taken by Jamie MacDonald.
17:36 The assistant referee signals for offside against Nikica Jelavic. Indirect free kick taken by Jamie MacDonald.
16:47 Steven Naismith takes a shot. Save by Jamie MacDonald. Corner from the left by-line taken by Steven Davis, clearance made
by Adrian Mrowiec.
15:56 Effort on goal by David Templeton from inside the penalty box misses to the right of the target.
15:41 The ball is delivered by Kyle Lafferty, Adrian Mrowiec makes a clearance.
15:18 Madjid Bougherra produces a cross. The ball is delivered by Gregg Wylde, Adrian Mrowiec gets a block in. Steven Davis produces
14:11 Kyle Lafferty gives away a free kick for an unfair challenge on Craig Thomson. Jamie MacDonald takes the direct free kick.
13:23 David Templeton challenges Steven Naismith unfairly and gives away a free kick. Free kick crossed right-footed by Steven Davis,
clearance made by Eggert Jonsson. Centre by Maurice Edu, clearance by Eggert Jonsson.
11:13 Corner from the left by-line taken by Steven Davis, clearance made by Ruben Palazuelos. Madjid Bougherra crosses the ball,
Ruben Palazuelos manages to make a clearance.
9:32 Foul by David Weir on David Templeton, free kick awarded. Ian Black delivers the ball from the free kick right-footed from
7:48 Ryan McGowan takes a shot. Madjid Bougherra gets a block in. Nikica Jelavic produces a right-footed shot from the edge of
the area and misses to the left of the goal.
4:21 Adrian Mrowiec fouled by Nikica Jelavic, the ref awards a free kick. Free kick taken by Jamie MacDonald.
3:39 David Templeton takes a shot. Allan McGregor makes a comfortable save. Foul by Maurice Edu on Ryan McGowan, free kick awarded.
Free kick taken by David Obua.
3:04 Nikica Jelavic is ruled offside. Jamie MacDonald restarts play with the free kick.
0:00 The game begins.
Live text and data provided by The Press Association.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.