Running only his second career marathon, Kemboi smashed the previous record of 2:17:19 set by Elijah Mutandiro in 2003.
“I'm so happy to break the record,” said the 26-year-old Kenyan.
“I didn't have a plan for this race, I just kept up with Timothy [Kibet, who finsihed fifth] and followed him and maintained the pace.
“Towards the 33km mark I could feel it was time to break away."
Motlokoa Nkhabutlane was the first South African to finish the 42.2km race, ending second overall in 2:17:11.
Two-time winner Mabhutile Lebopo of Lesotho came third in 2:17:14.
Kemboi and Kibet, who won the inaugural Gauteng Marathon in September, led the pack from the halfway mark and opened a three-minute gap on the chasing group.
The two Kenyans were running neck-and-neck until the 33km mark where Kemboi broke away and took the lead, maintaining it until the end.
Meanwhile, Tjoka, of Lesotho, won the women's race for a record seventh time in 2:45:20.
Isabella Jepchumba of Kenya finished second in 2:46:35 and Naomy Chebongi was third in 2:47:00.
Tjoka said she had a battled in the build-up to the race and was delighted with another victory, having taken a tumble shortly after the halfway stage.
“This year was tough for me because I came in with an injury and I didn't think I would make it this time around,” Tjoka said.
“After falling towards the 25km mark I was heartbroken because the ladies caught up with me, but I got up and kept on going and managed to leave them behind again.”
Results:
Men:
1 Shadrack Kemboi 2:16:28
2 Motlokoa Nkhabutlane 2:17:11
3 Mabhutile Lebopo 2:17:14
4 Tshidiso Bosiu 2:18:48
5 Timothy Kibet 2:18:59
6 Matela Makhetha 2:19:19
7 Evans Taiget 2:19:26
8 Mazibuko Papi 2:19:45
9 Solomon Soy 2:20:38
10 Moeketsi Mosuhli 2:21:47
1 Mamorallo Tjoka 2:45:20
2 Isabella Jepchumba 2:46:35
3 Naomy Chebongi 2:47:00
4 Tabitha Tsatsa 2:47:30
5 Abeba Toleda 2:48:33
6 Pamela Kipchoge 2:48:45
7 Njeya Paulina 2:49:04
8 Peris Chumba 3:01:28
9 Mpho Mbuzu 3:01:28
10 Lesley Train 3:02:13