In a match played in driving rain, the Wallabies looked set for an easy night after Israel Folau's 28th-minute try gave the home side a 14-3 lead at the break.
But the second half belonged to Argentina, with the Wallabies' weakness at the scrum opening the door for a shock result.
Time and again, the Pumas gained the ascendancy at the scrum, but the visitors' only reward came when No.8 Juan Manuel Leguizamon crossed in the 65th minute.
The Wallabies' expansive game style came under heavy fire following last week's 38-12 loss to the Springboks.
But after a day of driving rain in Perth, the Wallabies were forced to go more direct in the slippery conditions.
Argentina were the first to hit the scoreboard with an eighth-minute penalty, but the first half was owned by the Wallabies as they made the most of a strong breeze.
Folau beat four opponents to cross over, while Christian Lealiifano nailed three penalties.
McKenzie made a huge call during the week when he dropped star halfback Will Genia to the bench.
But the move paid dividends, with his replacement Nic White performing well throughout the match.
His kicks for touch in the first half were particularly impressive, and the Brumbies No.9 played out the entire match.
Winger Nick Cummins made an early error when his decision to run it out of defence resulted in a turnover penalty and three points to the visitors.
But the Western Force flyer made up for the mistake with a few promising runs and some brutal tackles.
Argentine hooker Agustin Creevy struggled at line-out time, gifting the Wallabies numerous opportunities to turn defence into attack in the first half.
The Wallabies entered the match on the back of a four-match losing streak, with three of those coming under McKenzie's watch.
Saturday's win will give the team some much-needed confidence ahead of their trip to South Africa to take on the Springboks in a fortnight.