They scored three tries to one in Hamilton on Saturday night, with halfback Aaron Smith getting a double.
However, victory came at a cost for the All Blacks, with skipper Richie McCaw limping off with a knee injury in the 60th minute of his 119th Test.
Rain arrived early in the first half and stayed, making conditions slippery and there were numerous handling errors by both sides.
Argentina showed plenty of spirit, their first scrum a statement of intent with a big shove.
But they were hurt by hooker Eusebio Guinazu's first-half sin-binning for breakdown infringements and by lineout problems that resulted in them losing a number of their throws.
All Blacks No.8 Kieran Reid produced another high work-rate performance, and he had a direct hand in two of his side's tries.
It was Argentina who struck first, taking a shock lead in the fifth minute.
All Blacks inside centre Francis Saili made an unfortunate start to his debut Test, dropping the ball in his own 22 and the Pumas swooped.
Five passes later and No.8 Juan Manuel Leguizamon was over for a try that five-eighth Nicolas Sanchez converted.
The All Blacks replied with a Dan Carter penalty, a goal that made him the first player to pass 1400 Test points.
Carter missed two further attempts, one hitting a post, before the Pumas suffered their yellow card setback.
New Zealand made used of Guinazu's absence to run in Aaron Smith's two tries.
The first came from a line-out when they turned down the shot at goal after the sin-binning and Read produced an outrageous offload to send Smith over.
The second came after a huge break from deep by Carter, back from a calf injury for just his second Test of the year.
After the ball was worked wide and winger Ben Smith kicked ahead, Aaron Smith was on hand to pounce on the loose ball and touch down again.
Behind 15-7, the Pumas closed the gap with a Sanchez penalty to go into halftime just five points behind.
Carter and Sanchez traded penalties early in the second half, before Read again made a vital intrusion.
His charge-down and regather led to a slick backline move that ended with winger Julian Savea scoring his 14th try in his 14th Test.
Flanker Juan Martin Fernandez Lobbe, on his return from injury, led the Pumas superbly.
But when he pulled back a chasing Saili without the ball, he conceded the penalty that substitute five-eighth Beauden Barrett knocked over to complete the scoring.