Matthew Rusike pounced on an error by Olivier Kwisera to find the back of net just after five minutes for Benni McCarthy's charges.
It was a lively opening 15 minutes as both sides managed to create decent goalscoring opportunities.
In the 36th minute, Makhehlene Makaula unleashed a thunderous long rang volley which was tipped over for a corner by Peter Leeuwenburgh.
Captain Roland Putsche was substituted with Thabo Nodada before the half time break through injury.
One minute into the second half, Ayanda Patosi’s curling effort was destined for goal only for Kwisera to produce a superb save.
Bangaly Keita equalised for the home team as he pounced on a flick from Paulus Masehe to tap in from close range after 58 minutes,1-1.
Five minutes later, Stars completed the turn around when Sthembiso Dlamini curled a beautiful ball from the edge of box to into the top corner, 2-1.
With four minutes remaining, Dlamini almost grabbed a brace but his shot flashed agonizingly wide off goal.
Cape City then dramatically equalised with virtually the last kick off the match as Craig Martins shot struck the post before the ball ricocheted off Kwisera to make it 2-2.