The left-handed opener hit 101 off just 68 balls and put on 106 for the first wicket with Adam Gilchrist (42) to set the cornerstone for Australia's big total in the group's final game between the world's top two ranked teams.
Michael Clarke (92) and Ricky Ponting (91) then lit up the innings during their rapid 161-run third wicket stand which came off 130 deliveries as both took full advantage of the short straight boundaries at Warner Park.
Australia's previous World Cup highest total of 359-2 was made against India at Johannesburg in the 2003 final.
The 35-year-old Hayden reached his hundred off 66 balls, beating the previous best century of 67 balls set by Canada's John Davison against the West Indies at Centurion in 2003.
He achieved the record with a six off South African skipper Graeme Smith.
Hayden finally fell to a sharp Herschelle Gibbs catch off Jacques Kallis' bowling after hitting 14 boundaries and four towering sixes.
South African were sloppy in the field, twice dropping Clarke to add to their bowling problems. Spearhead Shaun Pollock went for 83 runs in his 10 wicketless overs, while Makhaya Ntini went for 68 in his nine with one wicket.
Hayden was the more aggressive of the two openers, hitting Pollock for a boundary and two sixes in the fifth over to brought up Australia's 50.
He then greeted first-change Charl Langeveldt with the same disdain, hitting the fast bowler for his seventh boundary to reach a personal half-century off just 38 balls.
Langeveldt finally provided the first breakthrough when Gilchrist drove an outgoing delivery straight into the hands of cover to Herschelle Gibbs in the 15th over. Gilchrist hit six boundaries and a six in his run-a-ball knock.
Ponting, who completed 10,000 one-day runs when on eight, hit eight boundaries and two sixes during his 91-ball knock.
The 32-year-old Australian skipper reached the landmark when he hit a six off Hall over long on, becoming the seventh batsmen to score 10,000 or more runs in one-day internationals.
India's Sachin Tendulkar leads the group with 14,847 runs from 384 one-dayers ahead of Inzamam-ul-Haq (11,739), Sanath Jayasuriya (11,675), Sourav Ganguly (10,632), Brian Lara (10,217) and Rahul Dravid (10,125).
Clarke, like his captain, fell short of his hundred, in his case by eight runs. He hit seven boundaries and four sixes before being run out.
Hall was the best South African bowler with 2-60.
Australia 377 for 6 in 50 overs (Hayden 101, Ponting 91, Clarke 92, Gilchrist 42; Hall 2 for 60, Kallis 1 for 66, Ntini 1 for 68) Vs South Africa (yet to bat).