Argentina wing Juan Imhoff scored a hat-trick of tries as they claimed a first victory over South Africa with a 37-25 success in their Rugby Championship match at King's Park on Saturday.
The Springboks, who will have plenty of soul-searching to do ahead of next month's World Cup in England, were sloppy and disjointed against an Argentina side more intelligent in their execution and dominant in every facet of the game.
Centre Marcelo Bosch scored Argentina's other try, and added a long-range penalty and a drop-goal, with experienced flyhalf Juan Martin Hernandez, playing his first test of 2015, landing four conversions and a penalty.
South Africa scored tries through lock Lood de Jager, fullback Willie le Roux and wing Bryan Habana, with out of sorts flyhalf Handre Pollard kicking two penalties and two conversions.
After narrow defeats by Australia and New Zealand earlier in the Rugby Championship, the latest setback means South Africa head into their final World Cup warm-up in Buenos Aires next Saturday on the back of three straight defeats.
Argentina claimed their first success over the Boks at the 20th time of asking and fully deserved their triumph.
They set the tone with a score in the first minute as Bosch burst past some poor defending to dot down under the posts.
Imhoff then scythed his way through more ineffective tackles for his first try, before adding a second when scrumhalf Tomas Cubelli's excellent offload helped send him clear in the corner.
It was panic stations for the Boks as they trailed 21-6 five minutes before halftime but De Jager powered his way over from a five-metre line-out to reduce that deficit to eight points.
But when prop Tendai Mtawarira gave away a soft penalty straight from the restart and fellow front-rower Vincent Koch his third penalty of the half at the scrum, Argentina went into the break leading 27-13.
The visitors made a fast start to the second half as well when they caught South Africa napping from a five-metre tap penalty and Imhoff ran in unopposed in the corner.
Le Roux closed the gap when he scored after good work from wing Jesse Kriel, but a drop-goal from Bosch kept Argentina in front by 17 points going into the final 15 minutes.
Habana cantered in for a try in the closing stages but by then the game, and some more Bok confidence, was lost.