When reducing their opponents to 24-4 early in the match, Australia would have felt confident about breezing into Sunday's showdown with India.
However, after South Africa recovered to make 212 all out, the Baggy Greens were reliant on an eight-wicket partnership of 22 to get them over the line.
Miller contributed eight fours and five maximums during a knock of 101 from 116 deliveries, spending over 36 overs at the crease to keep the Proteas competitive.
What a WAY to bring up 100 6️⃣🚀— Sky Sports Cricket (@SkyCricket) November 16, 2023
Simply brilliant from David Miller! 😤💪 pic.twitter.com/Qt8yh1VfB1
Pat Cummins (3-52) and Travis Head (2-21) ensured that South Africa did not make more of an impact with the bat, yet their 212 all out from 49.4 overs was more than enough to keep Australia honest on a pitch that had proven unpredictable.
In response, Australia quickly made 60 from just 37 balls, seizing control of the contest with Head (62) and David Warner (29) moving Australia well ahead of the required run-rate.
Josh Inglis had made 28 before his dismissal, yet it was left to Starc (16*) and Cummins (14*) to win the game for Australia, remaining at the crease for 7.3 overs as they delivered the remaining 20 runs.