South Africa had started their campaign on a sour note, losing to Sri Lanka by five runs, but A B de Villiers' men notched up successive wins against New Zealand and the Netherlands in the next two games to stay in the hunt.
England, too, started with a loss against New Zealand, courtesy rain that robbed them of a chance to defend their total of 172/6, but the Stuart Broad-captained side brought its campaign back on track with a six-wicket victory over table-toppers Sri Lanka last night.
It was Dale Steyn, who scalped four wickets to derail New Zealand's chase in their second match, while last night, it was leg-spinner Imran Tahir's four-wicket haul that rescued them from the Netherlands.
South Africa's batting have not been consistent. J P Duminy have been their best batsman in the tournament but Faf du Plessis and De Villiers have been out of form for quite some time and they will have to show much more responsibility.
More From This Section
However, England were sloppy on the field as they dropped four catches and missed a run-out to allow Sri Lanka to reach the imposing total, and Broad will have to ensure they don't make the same mistake tomorrow.
Squads:
England: Stuart Broad (capt), Michael Lumb, Alex Hales, Ian Bell, Craig Kieswetter, Moeen Ali, Eoin Morgan, Jos Buttler (wk), Ravi Bopara, Chris Jordan, Tim Bresnan, James Tredwell, Jade Dernbach, Stephen Parry, Chris Woakes, Luke Wright, Joe Root, Ben Stokes.