In a riveting tie, Lennox Bacela bagged a brace, to go with a strike from Oupa Manyisa, while Mabhuti Khenyeza netted for Aces at Mbombela Stadium.
The hosts showed early signs that they came into the game ready to show their stuff, but a quick one-two counter attack between Manyisa and Daine Klate saw Bucs threaten with just two minutes on the clock.
Khenyeza responded with two threatening plays minutes later when he nearly turned in his header off a corner-kick at the near post, before firing a bullet from range which skipped wide of Senzo Meyiwa’s goal.
It was end-to-end stuff on the park and both the teams continued to prove dangerous on the break with some exciting goalmouth action unraveling in a matter of just three minutes.
In the 14th minute Bacela tested Bafana Nhlapo with a powerful low drive which the goalkeeper did well to push out for a corner, before Thabo Qalinge nearly stole the match-opener with his ferocious shot which rattled the crossbar just a minute later.
At the other end of the park, Nhlapo pulled off another miraculous save to deny Klate at the near post, when he did well to twist his body and curl the ball off the line.
Then in the 24th minute Khenyeza beat Siyabonga Sangweni for the ball before rushing into the box and towards goal.
The striker was, however, stopped in his tracks as Thabo Matlaba made a crucial interception to snatch the ball at his feet.
Unfortunately for Sangweni he had to be stretchered off and replaced by Ayanda Gcaba for what was later confirmed as a snapped Achilles tendon.
The injury didn’t seem to affect Pirates as they soon opened their account on the stroke of the half hour. Bacela turned the ball into the back of the net with a glancing header at the near post thanks to Happy Jele’s brilliantly worked cross near the corner flag, 1-0.
Klate, who scored off a set piece in the first-leg of the MTN8 semi-final against Kaizer Chiefs, nearly made it 2-0 with a stunning free-kick which whiskered just wide of the far post.
Eduardo Ferreira was the next player to be substituted through injury as he was replaced by Thabang Rooi with just four minutes to go to the break.
But that wasn’t the last action of the half as Khenyeza had the last laugh when he tapped home Qalinge’s cross in the fourth minute of extra time to head into the break at 1-1.
At the restart, Bucs started their dominance early and Matlaba really should have scored Pirates’ second goal when he beat his man in the 58th minute before directing his effort disappointingly wide with an open target at his mercy.
Roger de Sa’s men continued to push for the advantage when Tlou Segolela was denied by the woodwork in the 68th minute with his volley at the near post.
Aces did well to absorb the pressure, but as the game looked destined for extra time, Klate supplied a ball to Bacela in the box and he made no error in drilling in a low shot to make it 2-1 with five minutes to play.
Manyisa put the final nail in the coffin when he calmly beat Nhlapo with literally the final touch of the game when he found a good angle to hit a hard and low shot into the back of the net in the fifth minute of stoppage time.