The Citizens got off to the worst possible start with Peter Leeuwenburgh guilty of presenting Siwelele with an early Christmas gift, which Ndumiso Mabena duly accepted. The Celtic striker stripped the Dutch shot-stopper of possession before firing home into an empty net to silence the home fans, with five minutes on the clock.
Goalscorer turned provider as Phunya Sele Sele doubled their lead in the 17th minute. Given Mashikinya pouncing on a ball into the area by Mabena, keeping his composure, before placing the ball past an onrushing Leeuwenburgh.
This prompted a response from the hosts who went close through both birthday boy Teko Modise and Taariq Fielies before the break: both sending their respective attempts wide of goal.
City pressed the self destruct button once more soon after the break. Thami Mkhize’s lackadaisical defending opened the door for Mabena, but lucky for the Citizens skipper he failed to convert.
Siphelele Mthembu made good use of their strike of good fortune and pulled a goal back for the hosts in the 59th minute, squeezing between two Celtic defenders before nodding the ball past Kabelo Dambe for what was his fifth goal of the league season.
Ralani pulled the hosts level before striking home the winning goal in a thrilling two-minute spell that had the home fans on their feet.
Shane Roberts teed up Ralani for his first in the 72nd minute with the latter racing onto the ball before firing home from an acute angle. The winger’s second was a mirror image of the first, as Matthew Rusike played him through on goal before he calmly slotted the ball past Dambe to send the home fans into ecstasy.
City almost threw it all away as Tumelo Mangweni made an almost instant impact off the bench. The attacker darted into the area before sending his arrowing header inches wide of goal as the hosts ultimately held on for a memorable win.
Cape Town City (0) 3 (Mthembu 59′ Ralani 72′ 74′)
Bloemfontein Celtic (2) 2 (Mabena 5′ Mashikinya 17′)
Cape Town City: Leeuwenburgh; Mkhize, Dove, Fielies, Seedat, Nodada, Modise (Rusike 60′), Ralani, Patosi (Roberts 70′), Norodien (Links 53′), Mthembu.
Bloemfontein Celtic: Dambe; Sam, Letlabika, Lingwati, Rikhotso, Baloyi, Mashikinya (De Jongh 66′), Dlamini (Maema 36′), Phalane, Mabena, Masuku (Mangweni 81′).