South Africa thrashed World Twenty20 hosts Sri Lanka in Hambantota after a rain delay reduced their Group C showdown to a seven-overs-a-side match.

Captain AB de Villiers crunched 30 from 13 balls in South Africa's 78 for four and Sri Lanka never threatened to go close to that imposing total, limping instead to 46 for five.

Fortunately, given it would have been a cruel way to go out, today's match only determined which of the two teams would finish top of the group, not which would go through to the Super Eight stage. Both were already assured of advancing, after wins over Zimbabwe.

South Africa lost Richard Levi to the fourth ball of the innings, to a brilliant diving catch by Dilshan Munaweera off the bowling of Nuwan Kulasekara, before Hashim Amla clubbed three boundaries over the infield to make a swift 16.

Amla was stumped by Kumar Sangakkara off Rangana Herath, and that brought De Villiers to the batting strip.

Angelo Matthews briefly clamped the brakes on with a tidy fourth over, but Herath then began to take punishment as De Villiers seized the initiative.

A swept four from the first ball of the fifth over by the skipper was followed by a vicious punch over the ropes for six.

De Villiers fell when Jeevas Mendis showed safe hands at mid-off to give Lasith Malinga a wicket, having been taken for 14 runs in the preceding five deliveries by the same batsman.

On 65 for three going into the final over, South Africa lost Faf du Plessis but JP Duminy played a clever scoop shot to the boundary from the fifth ball before drilling a straight six to end the innings.

Tillakaratne Dilshan fell in the first over of Sri Lanka's reply, brilliantly run out by wicketkeeper De Villiers.

Mahela Jayawardene had struggled to get the ball away so it was perhaps to Sri Lanka's advantage that he was dismissed for four at the end of the second over.

Yet at eight for two, the home side already looked to be batting in a lost cause. They rode their luck when Albie Morkel dropped a steepler to hand Sangakkara a life.

The same batsman was soon on his way though, top-edging an attempted pull shot to De Villiers.

Perera and Dilshan Munaweera perished when hitting out in the closing two overs, Sri Lanka's hopes long over.