The 34-year-old produced a brilliant nine-under-par round of 63 to finish on 14 under and clinch his fourth European Tour title of the season.
"This was the round of my life," said Noren, who climbs into the world's top 10 for the first time.
South Korea's Jeunghun Wang, who led by three strokes overnight, shot a three-over-par 75 to finish on eight under.
Victory brought Noren a winner's cheque of more than £903,000 to take his earnings for the year above £2.6m. Two years ago, he won less than £5,000 for the season.
Behind him and Wang, five players finished on seven under, including England's Andy Sullivan.
Noren's compatriot Henrik Stenson still leads the Race to Dubai after finishing eighth on six under.
England's Danny Willett remains in second, after he finished tied 11th on three under at Sun City, with Noren in third.