South Africa 145 for 6 (Miller 36, Senanayake 2-18) beat Sri Lanka 123 for 7 (Sangakkara 39, Tsotsobe 2-17) by 22 runs
Live Scorecard and ball-by-ball details
It was South Africa against Kumar Sangakkara again, this time in Hambantota, and the visiting bowling unit overcame to guarantee their side a trophy. In vicious winds, South Africa's attack held their nerve to defend a challenging total and ensure the series was won with a game to play.
Sangakkara was the only batsman to mount a challenge and lacked the support South Africa's line-up gave each other, albeit somewhat scrappy. Their top order showed slight improvements and two partnerships in the 30s helped them post a sizable target but, as was the case in the first match, the bowlers were tasked with winning the match. Led by Lonwabo Tsotsobe upfront, they struck regularly to ensure Sri Lanka were always an arm's length from the total.
Sri Lanka stumbled from the get-go when Mahela Jayawardene, who was brought back into the XI in place of the rested Tillakaratne Dilshan, lasted five balls. Tsotsobe got a short ball to angle across him and Jayawardene edged to Quinton de Kock. Kusal Perera took three boundaries off Morne Morkel to threaten his first score of substance in the series but lost another partner early on. Dinesh Chandimal chased a wide one from Tsotsobe and was also caught behind.
Then, Sri Lankan hearts were set aflutter when Perera and Kumar Sangakkara could have been dismissed three times in the space of six balls. Perera pulled Tsotsobe in the direction of two fielders but found space, while Sangakkara outside edged Parnell past a vacant slip area and then inside-edged inches away from his stumps.
The pair managed six runs off the next 15 deliveries before Perera was trapped in front trying to reverse sweep an Imran Tahir googly. Replays showed it had pitched just outside leg but with no DRS reviews in the shortest format, Perera had to go. He did, shaking his head all the way.
Sangakkara and Lahiru Thirimanne rebuilt but picked the wrong bowler to take on when Wayne Parnell was brought back. Thirimanne tried to heave him over midwicket and was bowled off a full delivery. Angelo Mathews holed out but Sri Lanka's challenge ended when Sangakkara was caught by David Wiese at extra cover.
Wiese was playing only his second match for South Africa and has not done too much of note yet but he back-pedaled to take the catch over his head and ensure Sri Lanka had too much to do. They needed 56 runs off the last five overs and, as South Africa's batting showed, that was always going to be unlikely.
South Africa's opening stand failed again when Henry Davids was bowled by a Nuwan Kulasekara inswinger. De Kock showed improvement with a more aggressive approach and used his feet better to come down the track, especially against the spinners. He took it too far though and was stumped off Sachithra Senanayake's bowling.
AB de Villiers and JP Duminy put on 38 for the fourth wicket, which proved the difference between the two sides. De Villiers looked well set when he was run-out but had helped lay a small foundation for David Miller to capitalise on.
Although South Africa's finishing was not explosive, Miller managed two big sixes in his favourite area down the ground. He eventually fell on his sword but the 36 runs he put on was enough to earn him the Man-of-the-Match award.
South Africa's record against Sri Lanka in T20s on the island is vastly different to the ODI form. While they have only won two fifty-over matches, South Africa have triumphed in all three T20s played against Sri Lanka in their homeland.
Firdose Moonda is ESPNcricinfo's South Africa correspondent