Result: Cape Town City 1-2 Mamelodi Sundowns
Date: 01 April 2018
Venue: Cape Town Stadium
The returning Khama Billiat looked to combine with Percy Tau and Gaston Sirino for Sundowns in the opening 20 minutes but the City defence remained resolute.
Billiat and Sirino combined once again on 27 minutes, with the former skipping past Robyn Johannes to set up the Bolivian, who rattled the underside crossbar from 12-yards out.
In the 38th minute, the woodwork came to Sundowns' frustration once again with Sibusiso Vilakazi seeing his poked effort crash off the upright.
Sundowns certainly ended the first half the stronger of the two sides although they could have gone into the break leading if Vilakazi had hit the target from 12-yards out.
Sundowns started the second half with promise and they took the lead in the 53rd minute as Billiat got beyond the City defence to pick out Tau, who sent a composed finish past Sage Stephens.
The lead was doubled on 62 minutes as Hlompho Kekana rifled home a shot from 30-yards out after being gifted acres of space.
Six minutes later, City pulled a goal back through Surprise Ralani, who weaved his way into the box before firing past Denis Onyango with the help of a deflection.
Tariq Fielies came to City's rescue with 15 minutes as he popped with a superb clearance on the line to deny Tau his second goal.
Benni McCarthy's charges threw numbers forward in search of an equaliser, while Pitso Mosimane introduced Motjeka Madisha for Sirino.
Nevertheless, Sundowns managed to hold out for the win and they now join Kaizer Chiefs, Free State Stars and Maritzburg United in the last four.
Here's how they lined up:
City: 32. Stephens, 2. Mkhize, 12. Fielies, 16. Johannes, 5. Edmilson, 19. Putsche, 23. Matsi (Juma 62'), 26. Nodada, 21. Ralani (Basadien 81') , 24. Masina (Katerengga 46'),, 10. Patosi.
Subs: 1. Walters, 3. Mngonyama, 27. Gumede, 37. Kateregga, 48. Basadien, 31. Juma, 14. Nana.
Sundowns: 14. Onyango, 4. Langerman, 27. Morena, 6. Arendse, 16. Nascimento, 13. Mabunda, 11. Vilakazi, 8. Kekana, 26. Sirino (Madisha 87'), 33. Billiat (Zwane 79'), 22. Tau.
Subs: 31. Brimah, 32. Madisha, 18. Zwane, 35. Makgalwa, 38. Zulu, 19, Brockie, 7. Manyisa.