Holders Australia crushed South Africa by seven wickets in their semi-final clash at the Beausejour Stadium in St Lucia on Wednesday.
The Aussie seamers ran through the Proteas lineup dismissing them for just 149 runs within 44 overs - their lowest total in a World Cup match.
In reply, Australia raced to the target with more than 18 overs to spare. They will now meet Sri Lanka at Barbados on Saturday, a repeat of the 1996 Cup final at Lahore when the Lankans beat Australia by seven wickets.
Shaun Tait's successful 39 for 4 was the centrepiece of the Aussie bowling. Glenn McGrath, playing his last World Cup, regained the position of the tournament's highest wicket-taker with 25 in 10 matches, surpassing Sri Lankan off-spinner Muttiah Muralitharan (23).
Two-time champions Australia are now unbeaten in their last 28 Cup matches and are aiming to become the first team in tournament history to complete a hat trick of titles. They were winners in 1999 in England and 2003 in South Africa.
Adam Gilchrist was bowled out by Charl Langeveldt for one in the second over. With the scoreboard reading 1/0, Ricky Ponting took his place. The skipper scored a rapid-fire 22 off just 25 balls, but was soon bowled out by Andre Nel while hitting across the line. The scorecard read 44, with the ninth over still on.
Matthew Hayden and Michael Clarke cruised along to reach the achievable target. The former also became the first batsman in the World Cup to complete 600 runs during his 41 off 60 runs.
Earlier, Nathan Bracken gave Australia an early breakthrough by packing off Graeme Smith in the third over of the innings. The ball dashed into the off stump and the skipper returned for a meagre score.
McGrath followed suit, dismissing another key wicket in the sixth over. Jacques Kallis stepped forward to face the yorker off the Aussie speedster but the ball met the off stump. Adam Gilchrist caught the ball in the ninth over to dismiss AB de Villiers (15) off Shaun Tait's bowling.
McGrath scalped two more wickets and the Proteas' decision to bat started looking dubious. The pacer was on a hat trick after removing Ashwell Prince and Mark Boucher in consecutive deliveries. Both the batsmen walked back for a duck.
Justin Kemp's decision to leave the ball proved fruitful as it just missed banging into the off stump. The seamers were clearly having a rollicking time as the South African were reduced to 27/5 inside 10 overs.
Herschelle Gibbs and Justin Kemp tried to recover pace, after reeling for the first ten overs, with a 50-run stand off 67 balls. But, Tait got the better of Gibbs in the 23rd over and the batsman walked back for 39. Andrew Hall was the next man in, only to fall to the bowler in the 27th over.
Next, Brad Hogg was caught and bowled by Shaun Pollock for a paltry score. Tait removed Andre Nel while Watson scalped Charl Langeveldt to ensure a low total by the opponents.
It was the second meeting between the two teams in the ongoing tournament, with Australia beating South Africa in a group match at St Kitts. It was South Africa's third appearance in the Cup semi-final since their debut in 1992.
Australia: Adam Gilchrist, Matthew Hayden, Ricky Ponting (captain), Michael Clarke, Andrew Symonds, Michael Hussey, Shane Watson, Brad Hogg, Nathan Bracken, Shaun Tait, Glenn McGrath.
South Africa: Graeme Smith (captain), AB de Villiers, Jacques Kallis, Herschelle Gibbs, Ashwell Prince, Justin Kemp, Mark Boucher, Shaun Pollock, Andrew Hall, Andre Nel, Charl Langeveldt.