Cape Town - Cheslin Kolbe was at his entertaining best as Western Province stunned the Blue Bulls 23-18 at Loftus on Friday in the first of the weekend's Currie Cup semi-finals.
The fullback scored the first try and set up the second as coach John Dobson's men battled their way to victory.
The first half was dominated by the flyhalves with Tian Schoeman and Robert du Preez slotting thee penalties each for the Blue Bulls and WP respectively.
It appeared that the home side had the upper hand until they were reduced to 14 men after loosehead prop Pierre Schoeman was sent to the bin for a dangerous and high tackle on Kolbe.
From that moment on WP had the ascendancy, but a combination of resilient Bulls defence and ill-discipline meant that they couldn't capitalise on the numerical advantage and the sides went into the break locked at 9-9.
A Schoeman penalty put the Bulls ahead after another tight start to the second half, but a fantastic collect from Kolbe after a Johnny Kotze grubber set the game alight in the 52nd minute as Province scored the first try of the game.
Schoeman's fifth penalty of the night made it 16-15 to WP going into the last 20 minutes, and it was all getting a bit tense at Loftus.
The Bulls had a penalty with just 12 minutes to go in a kickable position, but they instead set up a lineout that they lost - a decision that would prove to hurt them.
Kolbe was at his best again in the moments that followed.
He kicked the ball through and Bulls wing Travis Ismaiel ran it into touch. Kolbe then ripped the ball out of Ismaiel's hands and took the quick lineout and it went wide where substitute scrumalf Jano Vermaak scored in bizarre fashion.
Kurt Coleman's conversion was good, and all of a sudden it was an eight-point game with eight minutes to play.
A late Schoeman penalty set up a nervy final five minutes for the visitors, but they held on to secure their spot in the Currie Cup final against either the Golden Lions or the Free State Cheetahs, who play on Saturday afternoon.
Blue Bulls 18 (9)
Penalties: Tian Schoeman (6)
Western Province 23 (9)
Tries: Cheslin Kolbe, Jano Vermaak
Penalties: Robert du Preez (3)
Conversions: Du Preez, Kurt Coleman