Goals from Kermit Erasmus, Siyabonga Nomvete, Keegan Ritchie and Tebogo Langerman – including a dramatic ending to extra time – took the game to 2-2, and it went to penalties.
SuperSport started well, showing more incisiveness and pace in attack against a Swallows team that looked off the pace in the opening stages.
Erasmus missed a great chance to put United ahead in the fifth minute, when a corner was poorly defended by the Birds, handing the young striker a shooting chance in the box, but he snatched at his effort and pulled it wide of goal.
On 17 minutes Brent Carelse's long range free-kick went over the crossbar. The effort had goalkeeper Aubrey Mathibe, who surprisingly started ahead of Greg Etafia, scrambling across his goal line.
Swallows were ineffective in the opening 20 minutes, with skipper Nomvete left to work alone up front.
But the home side had the numerical advantage in midfield and gradually began to get a foothold in the game.
Left-back Keegan Ritchie tested United’s debutant goalkeeper Wayne Brown with a powerful free-kick on the half hour mark, but the new man made an impressive save.
A short while later Morgan Gould almost directed a fine cross from Shaun Haschick into his own net, but the ball skipped just wide of the upright.
Swallows appeared to be in control of the game as half time approached, but they were stunned when Erasmus scored a terrific long-range goal.
The striker turned Morgan Shivambu 20 metres from goal and let fly with a shot that was too fast for Mathibe to get across to.
Swallows soon pulled level. Nomvete sprung the offside trap, after an incredible long-range pass from the halfway line, outpaced Gould, and slid a low shot past the helpless Brown to level the game in the 54th minute. Classic centre-forward play from the veteran ...
Mathibe denied Erasmus in the 58th minute, keeping out a point-blank shot after the striker met a fine cross from Lyle Lakay.
The game went to extra time at 1-1, and looked likely to go to penalties, but with seconds left on the clock, the Birds were awarded a soft penalty after substitute Lwazi Skosana was pushed over by Jeffrey Ntuka.
Ramahlwe Mphehlele twice tried to take the spot kick and was denied both times by Brown, but on each occasion United defenders ran into the box.
The kick was converted by Ritchie.
SuperSport replied immediately afterwards through Langerman, to take the game to penalties in the dying seconds.
SuperSport missed two of their penalties, while Swallows converted four of the five to go through to the semi-finals.