Australian captain Michael Clarke hit an aggressive century to cancel out some superb fast bowling by South Africa's Dale Steyn on the first day of the first Test at Newlands here on Wednesday.
Clarke hit 107 not out in an Australian total of 214 for eight, while Steyn proved a constant threat to the batsmen on a seam-friendly surface, taking four for 31. New cap Vernon Philander took three for 54.
Shaun Marsh was the only top-order batsman to provide meaningful support to Clarke, making 44 and helping his captain put on 103 for the fourth wicket.
For the rest it was a struggle after Australia were sent in to bat on a day restricted by rain and bad light to 55 overs.
Australia crashed to 40 for three before Clarke was the dominant partner as he and Marsh revived Australia's fortunes. Marsh contributed only 27 of the 103 runs added by the pair but played a valuable supporting role while Clarke counter-attacked.
Graeme Smith's decision to send Australia in quickly paid off as Steyn claimed the wickets of Shane Watson and Ricky Ponting, while Philander had Phil Hughes caught behind after rain delayed the start by almost two hours.
Steyn dismissed Marsh with the first ball of his third spell when he was called back for what proved to be the last over before tea.
Clarke was given a torrid time by Steyn at the start of his innings before going for his shots when Steyn was replaced by Jacques Kallis.
The Australian captain scored 40 of the runs as the stand with Marsh became worth 50, reached 5000 runs in Test cricket when his score was on 44, and hurried to his fifty off only 56 balls with nine fours.
He maintained the pace despite losing Marsh, Mike Hussey and Brad Haddin before reaching his 16th Test century off 108 balls when he stroked Kallis through the covers for his 16th boundary.
The left-handed Marsh was tested with some short-pitched bowling early on but remained unruffled, collecting runs when the bowlers strayed in line or length in a 101-ball innings which included eight fours.
Marsh was trapped on his crease and given out by umpire Ian Gould. He asked for a review but it confirmed that Gould was right.
Earlier, South Africa successfully sought a review when Ponting was given not out against Steyn by umpire Billy Doctrove. Replays showed the ball would have hit his leg stump.
South Africa also had an unsuccessful review when Gould gave Marsh not out on 28 against Philander, the ball pitching outside leg stump.
Philander, 26, was one of two new caps, with South Africa also selecting Pakistan-born leg-spinner Imran Tahir, 32. Tahir did not look threatening in his six overs, conceding 26 runs.
Australia made only one change from the side that beat South Africa A in a warm-up game last week with fast bowler Ryan Harris replacing Trent Copeland.