Coming in after openers Graeme Smith and Hashim Amla had put on 69 runs, Kallis tore into the Zimbabwe bowling to lead South Africa to 153-2 in just 23.3 overs in reply to Zimbabwe’s 152 all out in 41.5.
Smith also appeared in attacking form at the M A Chidambaram stadium with 41 from 54 balls before being stumped by Tatenda Taibu off Greg Lamb’s bowling. Smith’s opening partner Hashim Amla slammed 45 off just 33 balls.
Ray Price was Zimbabwe’s best bowler with 1-19 off 4 overs.
Earlier, Imran Tahir impressed on his debut for South Africa with 3-35.
Electing to bat after captain Elton Chigumbura won the toss, Zimbabwe got off to a good start with openers Charles Coventry and Brendan Taylor putting on 49 runs for the first wicket.
Fast bowler Morne Morkel had Coventry caught at mid-on by Tahir for 21 as Zimbabwe started to struggle
Former captain Tatenda Taibu was dismissed off the very next ball by Morkel, caught by Smith.
From 49-0, Zimbabwe quickly slid to 95-6 as their batsmen failed to cope against the varied attack, especially the slower bowlers.
Brendan Taylor played a vital role in holding the innings together before falling for 40, the highest score for Zimabwe, and Sean Williams was the only other batsman to offer resistance before he fell for 35.
The teams used 14 players each, allowing the sides to change three players between their bowling and batting teams.
South Africa begins its World Cup campaign against West Indies in New Delhi on Feb. 24, while Zimbabwe faces three-time defending champion Australia at Ahmedabad on Feb. 21.