Australia cruised to a 10-wicket victory on the fourth day of the third and final Test against South Africa at the Sydney Cricket Ground to complete a 3-0 series whitewash.
Proteas opener Gary Kirsten's brave resistance was finally ended on 153 after 437 minutes but it was too late to save South Africa.
After resuming on 209 for two, the tourists suffered an early blow as Jacques Kallis was dismissed for 34 in the third over of the day when he was caught by wicketkeeper Adam Gilchrist after edging an attempted sweep off Shane Warne.
Only two runs had been added to the overnight score when Neil McKenzie joined Kirsten at the wicket.
The pair added 71 before McKenzie mistimed a shot off Brett Lee's bowling and gave a simple catch to MacGill when he had scored 38.
Justin Ontong, a controversial selection for the match, made 32 in a stand of 74 with Kirsten before being trapped lbw by Shane Warne.
Kirsten's battling innings was finally ended when he dragged a wide ball from MacGill on to his stumps.
It was his 14th Test hundred, equalling Darryl Cullinan's national record, and he received a standing ovation from the SCG crowd.
Wicketkeeper Mark Boucher was caught behind off Glenn McGrath for 27 and MacGill bowled Nicky Boje for a single to leave the Proteas on 393 for eight.
Clive Henderson was bowled by MacGill for two but South Africa skipper Shaun Pollock smashed 61 not out in 87 minutes of defiance with two sixes and five fours before Allan Donald decided to chance his arm.
The fast bowler skied Warne to Lee after contributing two to a last-wicket stand of 49 with Pollock.
MacGill was the Aussies' best bowler with figures of four for 123 while Warne chipped in with three for 132.
At least their total of 452 forced Australia bat again.
But openers Justin Langer (21) and Matthew Hayden (30) smashed 54 off just 10.1 overs.
South Africa start another series at home to Australia next month and if they win that they can still end up as world champions.
PA