Sangakkara’s 108 enabled Sri Lanka to reach 256 for seven in their second innings – an overall lead of 426, eight runs more than the highest successful run chase in Test history.
The left-handed former captain shared stands of 94 with Thilan Samaraweera and 104 with rookie wicketkeeper Dinesh Chandimal as Sri Lanka went in search of their first win of the year – and their first in four Test tours of South Africa.
Samaraweera made 43 before being deceived by a googly from Imran Tahir which he edged into his stumps.
Sri Lanka pressed home their advantage as Sangakkara and new cap Chandimal scored at almost a run a minute. Chandimal followed up his first innings 58 with 54 and earned high praise from Sangakkara.