A penalty try 10 minutes from time paved the way for the Capetonians to edge the Vodacom Bulls - who were trailing 20-14 at the break – into the lead for the first time after the opening five minutes of play, and seeming towards victory.
A mishap by DHL Stormers No 8 Juarno Augustus, who lost the ball as he crossed the line in the dying seconds cost his team the opportunity to draw level with a possible match-winning conversion in the pipeline.
Earlier in the half, Vodacom Bulls flanker, Tim Agaba, suffered the same fate as his side launched a second half comeback of note.
The first half saw a strong start by the home side before the visitors took firm control, only to concede some soft points near the half time hooter.
Richard Kriel (fullback) raced through untouched for the home side in the opening minutes as they looked full of energy and purpose, taking advantage of some space with soft hands by his midfield pairing of Cornal Hendricks and Stedman Gans following front-foot momentum by the forwards.
The Cape side slowly but surely started to find their feet, mainly through their pack that seemed to have the upper hand in the tight phases.
They were also enjoying field position and territorial advantage, and flyhalf Kade Wolhuter's penalty goal 20 minutes in was good reward.
The visiting backs were also having a blinder with Damian Willemse (fullback) proving to be a menace in open space, with his probing runs testing the Bulls’ defence.
DHL Stormers winger Leolin Zas, however, stole the show after 25 minutes of play with two first-half tries.
First he stepped inside Kriel and then dispatched a poor effort from Stedman Gans (Vodacom Bulls centre) with a strong hand-off to score a good try, and he followed this up with a good break down the blind side by team-mate Rikus Pretorius (centre).
With the alarm bells sounding for the home side at halftime, they responded accordingly by opting for an attacking lineout after earning a breakdown penalty, and hooker Joe van Zyl was driven over, with Chris Smith's conversion cut the lead to six points at the break.
The home side entered the second half determined with Kriel finding space from a lineout move with Marco Jansen van Vuren (wing) beating two defenders on his way to the tryline, and this saw the sides being separated by one point on the scoreboard.
Wolhuter extended it to four points three minutes later as the game started to open up, and Tim Swiel, who replaced Wolhuter, kicked a fourth penalty goal to earn them a seven-point lead.
Vodacom Bulls flanker Marco van Staden, however, cancelled this out as he ran strongly, with Ruan Nortje (lock) picking up and driving forward to score.
More drama followed with 10 minutes to go as the Vodacom Bulls were awarded a penalty try with Ruhan Nel (centre) deemed to have slapped down a Hendricks pass with no other defenders left.
Veteran Springbok flyhalf Morné Steyn kicked a penalty goal with four minutes to play to extend the hosts’ lead to 34-26, but this was cancelled out as Tim Swiel (DHL Stormers replacement flyhalf) kicked a penalty goal of his own with a minute left to play, leaving his side a converted try short of a remarkable win.
The visitors work their way up field and eventually over the tryline, only to lose the ball, and in the end the Vodacom Bulls outscored them five tries to two.
Scorers:
Vodacom Bulls 34 (14) - Tries: Richard Kriel, Joe van Zyl, Marco Jansen van Vuren, Ruan Nortje, Penalty Try. Conversions: Chris Smith (2). Penalty Goal: Morne Steyn.
DHL Stormers 29 (20) - Tries: Leolin Zas (2). Conversions: Kade Wolhuter (2). Penalty Goals: Wolhuter (3), Tim Swiel (2).