South Africa moved top of 2018 Fifa World Cup qualifying Group D following a 2-1 win over Senegal at the Peter Mokaba Stadium in Polokwane on Saturday afternoon.

First-half goals from Thulani Hlatshwayo and Thulani Serero led Bafana Bafana to a morale-boosting victory on home soil, with Shakes Mashaba's men surviving late pressure by the visitors to seal all three points and so making significant strides in their quest to seal their ticket to Russia.

Cheikh N'Doye scored what proved to be a mere consolation for the Teranga Lions as arguably Africa's best team suffered a blow to their chances of reaching a first showpiece in 16 years.

Following a rather cagey start to the game, the visitors started to find their rhythm and while they were always going to be a threat from set-pieces, Sadio Mane emerged as an unlucky threat with the Liverpool man seeing his header attempt wide on nine minutes.

Moussa Konate was then offered time and space on the ball, but the Switzerland-based striker could only succeed in guiding his shot straight at Itumeleng Khune in the 24th minute.S

Bafana Bafana showed signs of improvement in the latter exchanges of the first half and after Keagan Dolly saw his left-footed shot straight at Abdoulaye Diallo – the hosts hit the front.

South Africa were awarded a rather contentious penalty after the ball hit Kalidou Koulibaly's knee. The referee, though, was under the impression that the burly defender had handled the ball and pointed to the spot. Hlatshwayo duly took the onus upon himself and drilled the ball into the back of the net on 43 minutes.

With Senegal still protesting the decision, Bafana Bafana pounced to double their lead in the first minute of stoppage time. Quick interplay between Keagan Dolly and Mpho Makola set up Serero, who guided the ball into the back of the net, 2-0 at the break.

For all the momentum gained at the end of the first stanza, South Africa were rather lacklustre in the second as Senegal took charge.

Moussa Konate and Mame Biram Diouf were guilty of squandering golden opportunities with the goal at their mercy, but second-half substitute N'Doye would finally find the back of the net for the visitors.

A mad scramble in the area finally ended with the French-based midfielder scoring. Khune did well to deny Cheikhou Kouyaté from close range, but N'Doye remained alert to cut the deficit.

Senegal put their hosts under relentless pressure in the final 10 minute, but in the end Shakes Mashaba's men survived wave after wave of attack to seal all three points.

Bafana Bafana next face Cape Verde at the Estádio Nacional de Cabo Verde in Praia on the 28 August 2017.

South Africa (2) 2 (Hlatshwayo 43' Serero 45+1')
Senegal (0) 1 (N'Doye 76')

South Africa: Khune; Hlatshwayo, Mathoho, Coetzee,Matlaba – Jali, Mabunda – Makola, Serero (Klate 81'), Dolly (Kekana 72') – Rodgers (Grobler 58')

Senegal: Diallo; Ciss, Mbodji, Koulibaly, Gassama (Toure 83') – Kouyate, Gueye, Diame (N'Doye 46') – Mane, Keita Balde, Konate (Diouf 60')