The Pumas brought the Sharks' winning run to a grinding halt after claiming a shock 32-22 victory in Nelspruit on Friday.
The home side were full value for their victory and secured a bonus point by scoring four tries.
It is the Currie Cup's 2013 First Division champions' first win over the Sharks since 2004 and the result means that the Pumas are still unbeaten at their Mbombela Stadium home this season.
In a match played at a high intensity, both sides deserve credit for making it an entertaining spectacle.
The Sharks made the brighter start and thought they had opened the scoring as early as the sixth minute.
The tournament's defending champions launched a drive at a line-out, on Pumas' five-metre line, and Jacques Botes broke free and made a dash for the try-ine, but, after checking with the television match official, referee Ben Crause disallowed his effort as he was just short of the whitewash.
In the build-up, there was an infringement from Renaldo Bothma and Fred Zeilinga opened the scoring when he added the easy three-pointer.
For the next 10 minutes both sides showed a willingness to run the ball but there was little to show for their endeavour.
The Pumas drew level via a Justin van Staden penalty in the 22nd minute but the game came alive shortly afterwards when Renaldo Bothma scored the opening try, from close quarters, after Roscko Speckman and JW Bell combined well in the build-up.
Van Staden converted and added a penalty soon afterwards which gave the hosts a 13-3 lead before Zeilinga replied with two three-pointers of his own after Speckman and Bothma committed fouls on defence.
Shortly before half-time, the Pumas extended their lead via a superb try from Van Staden. Stefan Watermeyer was the architect, after breaching the Sharks' defence with a telling break.
He offloaded to Speckman, who was brought to ground deep inside the visitors' half by Zeilinga, but the flyer managed to free his arms and offloaded to Van Staden who got over the try-line.
The fly-half failed to convert but with the score at 18-9, at half-time, the Pumas' confidence was growing.
The Sharks stepped up a gear after the break, however, and were soon on the attack inside the home side's half.
A Zeilinga penalty - after Giant Mtyanda played the ball on the ground - narrowed the lead to six points in the 43rd minute, but the Durban-based outfit were then reduced to 14 men after a cynical indiscretion on defence.
Odwa Ndungane was the culprit and was yellow carded after he deliberately knocked the ball from Corné Fourie's grasp deep inside the visitors' 22.
Ndungane's spell on the sidelines coincided with the Sharks best period of play, however, and they went on to score 10 unanswered points while he was in the sin bin.
Their only try came in the 56th minute when they won a tighthead at a scrum on thr Pumas' five-metre line and, after attacking with their backs, SP Marais scored in the left-hand corner.
Zeilinga added the extras as well as a penalty in the 62 minute which gave the visitors a 22-18 lead.
That sparked the visitors into life and they launched a great fightback, scoring two further tries through Watermeyer and Mtyanda.
Man of the match Watermeyer gave his side the lead after running on to a crash ball deep inside the Sharks' 22 and Mtyanda secured the win - and the bonus point - when he rounded off an enterprising move in the corner in the 74th minute.
Try: Bothma, Van Staden, Watermeyer, Mtyanda
Cons: Van Staden, Roos 2
Pen: Van Staden 2
Pen: Zeilinga 5
Pumas: 15 JW Bell, 14 Jerome Pretorius, 13 JW Jonker, 12 Stefan Watermeyer, 11 Rosko Speckman, 10 Justin van Staden, 9 Dylon Frylick, 8 Renaldo Bothma, 7 Uzair Cassiem, 6 Corné Steenkamp (c), 5 Giant Mtyanda, 4 Frikkie Spies, 3 Vincent Koch, 2 Francois du Toit, 1 Corné Fourie.
Replacements: 16 Frankie Herne, 17 DeJay Terblanché, 18 Marius Coetzer, 19 Jaco Bouwer, 20 Reynier van Rooyen, 21 JC Roos, 22 Coenie van Wyk.
Sharks: 15 SP Marais, 14 Odwa Ndungane, 13 S'bura Sithole, 12 Paul Jordaan, 11 Tonderai Chavhanga, 10 Fred Zeilinga, 9 Conrad Hoffmann, 8 Tera Mtembu (c), 7 Francois Kleinhans, 6 Jacques Botes, 5 JC Astle, 4 Etienne Oosthuizen, 3 Matt Stevens, 2 Kyle Cooper, 1 Dale Chadwick.
Replacements: 16 Franco Marais, 17 Lourens Adriaanse, 18 Stephan Lewies, 19 Johan Meyer, 20 Cameron Wright, 21 Heimar Williams, 22 Lionel Cronje.
Referee: Ben Crouse