Lionel Cronje's last-gasp penalty secured a 31-30 victory for the Kings over the Bulls at Loftus Versfeld in Pretoria on Saturday evening.
The Kings scored through tries from Makazole Mapimpi, Lionel Cronje and Malcolm Jaer while the Bulls dotted down through Jason Jenkins, Duncan Matthews and Jaco Visagie.
The Kings were on the backfoot for most of the game but showed tremendous character to cling on for their sixth victory of the season.
The opening ten minutes saw both sides exchanging penalties before the Kings scored the first try of the game.
It was a well-worked team try from the visitors as they took the ball from the left out to the right through the hands of Cronje and Jaer for Makazole Mapimpi to dot down in the corner.
Five minutes later, the Bulls thought they had regained the lead with a try of their own but the referee pulled the play back for a dangerous high tackle from Bulls lock Jason Jenkins, who received a yellow card for his indiscipline. Not only were the Bulls deprived of a try but to add insult to injury, they had a player sin-binned, much to the dismay of the home crowd.
After some powerful carries from the Kings forwards, Cronje powered over from close range and converted his own try as the visitors extended their lead to 17-3.
However, soon after parity was restored when the Kings also went down to fourteen men after Wandile Mjekevu was sin-binned for a high tackle
Despite the blow of losing a man, the Kings scored their third try with 34 minutes on the clock. This time Cronje turned provider with an expertly weighted cross-kick to find Chris Cloete who popped the ball inside to Malcolm Jaer to run through to score his sixth try of the season.
But it was the Bulls who had the last laugh of the first-half when Travis Ismaiel broke a number of tackles before offloading to Adriaan Strauss whose inside pass set Jenkins free on his way over the whitewash. A good team move from the Bulls capped off a free-flowing first-half as the sides went into the interval with the Kings leading 22-10.
A brilliant Bulls backline move saw the home side hit back shortly after the resumption of the second half. This time it was Warrick Gelant who broke the line before his expertly timed pass set Matthews away on the left wing who still had a lot to do. Matthews stepped inside and then out to free up space before finishing clinically in the corner despite the best efforts of Mapimpi. Schoeman converted to cut the deficit to just five.
Schoeman then added a penalty to cut the deficit to two. The momentum had well and truly shifted to the men in Blue with fifteen minutes to go after Lubabalo Mtyanda was given a yellow card for a professional foul, playing the ball on the ground. Schoeman kicked the resulting penalty to put the Bulls into the lead for the first time in the game at 23-22.
But almost immediately afterwards Cronje kicked a wonderful drop-goal as the Kings showed character as the lead changed hands again.
A Cronje penalty extended the Kings lead to 28-22 with seven minutes to go.
The Bulls looked like they had completed a remarkable fightback when replacement hooker Jaco Visagie crashed over after Jan Serfontein's initial break.
But it was not to be as the Kings had their pack to thank as they won a scrum penalty with the hooter already gone. Cronje kept his composure to snatch a last-gasp victory for the away side.
Tries: Jenkins, Matthews, Visagie
Cons: Schoeman 3
Pens: Schoeman 3
Yellow Card: Jenkins
Tries: Mapimpi, Cronje, Jaer
Cons: Cronje 2
Pens: Cronje 3
Drop goal: Cronje
Yellow Cards: Mjekevu, Mtyanda
Bulls: 15 Warrick Gelant, 14 Travis Ismaiel, 13 Jesse Kriel, 12 Jan Serfontein, 11 Duncan Matthews, 10 Tian Schoeman, 9 Rudy Paige, 8 Nic de Jager, 7 Jannes Kirsten, 6 Ruan Steenkamp, 5 RG Snyman, 4 Jason Jenkins, 3 Conrad van Vuuren, 2 Adriaan Strauss (c), 1 Lizo Gqoboka
Replacements: 16 Jaco Visagie, 17 Pierre Schoeman, 18 John-Roy Jenkinson, 19 Ruben van Heerden, 20 Shaun Adendorff, 21 Andre Warner, 22 Tinus de Beer, 23 Burger Odendaal
Kings: 15 Malcolm Jaer, 14 Wandile Mjekevu, 13 Berton Klaasen, 12 Luzuko Vulindlu, 11 Makazole Mapimpi, 10 Lionel Cronje (c), 9 Louis Schreuder, 8 Andisa Ntsila, 7 Tyler Paul, 6 Chris Cloete, 5 Lubabalo Mtyanda, 4 Irne Herbst, 3 Ross Geldenhuys, 2 Michael Willemse, 1 Mzamo Majola
Replacements: 16 Martin Bezuidenhout, 17 Schalk Ferreira, 18 Dayan van der Westhuizen, 19 Mzwanele Zito, 20 Thembelani Bholi, 21 Stefan Ungerer, 22 Masixole Banda, 23 Yaw Penxe
Referee: Federico Anselmi (Argentina)
Assistant Referees: Marius van der Westhuizen (South Africa), Rasta Rasivhenge (South Africa)
TMO: Johan Greeff (South Africa)