Branden Grace carded a blemish-free 66 to claim his eighth European Tour title with victory on home soil at the Nedbank Golf Challenge.
The South African, who shot a 75 in tough conditions on Friday, prevailed in a tight battle among the last group on the course, edging out Scott Jamieson by one stroke.
Victor Dubuisson was a shot further back from Grace's winning total of 11 under, while Li Haotong's stunning 64 saw the Chinese shoot up to fourth.
Grace climbs to ninth in the Race to Dubai standings, which are led by Tommy Fleetwood, who finished in a tie for 10th in Sun City.
The Englishman heads to DP World Tour Championship as firm favourite to triumph, with only Justin Rose and Sergio Garcia able to overhaul him.
Sunday's final round featured some superb golf, particularly from the last trio out on the course at Gary Player Country Club, along with the impressive Li.
Grace found all 18 greens in regulation as he became the first home winner at the event in a decade, while Li's card showed six birdies on the front nine.
The lead changed hands several times, with Jamieson's hopes dealt a huge blow when he picked up a double-bogey six at the eighth.
Birdies on 14 and 16 proved pivotal for Grace, with Dubuisson dropping a shot in between those two holes to put the 29-year-old in the ascendancy.
Grace, who carded the lowest round in major history with his 62 at the Open in July, held his nerve to sink a clinching par putt on the last to prompt joyous celebrations.
"This is awesome," said the champion, as quoted by the European Tour website. "This is the one event that as a South African you want to win. It's Africa's Major for a reason and what a special place it is.
"There's a lot of history and a lot of great winners on the trophy and I'm very glad to be able to put my name on the trophy as well.
"I had to stay patient and I had to take the chances when they came my way. I missed a couple of short ones but I think the big key was the putt on 16."
- BAN vs NZ, 2nd Test: Bangladesh in charge despite bizarre Mushfiqur dismissal on Day 1
- ICC Rankings: Ravi Bishnoi becomes world’s No.1 T20I bowler, surpasses Rashid Khan
- Bangladesh vs New Zealand HIGHLIGHTS, 2nd Test Day 1: Latest scorecard, match streaming info
- Junior Hockey World Cup 2023: India needs to guard against complacency against Spain
- Pakistan captain Shan Masood hits century in Australia warm-up