Chancellor Gordon Brown must learn humility and admit his mistakes, Liberal Democrat Treasury spokesman Vince Cable has said.
Responding to the pre-Budget report, Mr Cable accused Mr Brown of trying to "blag his way through" by blaming high oil prices and slow growth in Europe.
That was "nonsense", he argued, urging the chancellor to acknowledge he had got this growth forecasts wrong.
Mr Brown said the Lib Dems were still making pledges they could not afford.
In the Commons, Mr Cable said Mr Brown had a talent for "producing rabbits from hats" but had ignored long-term problems such as pensions and reform of the council tax.
He welcomed some of the pre-Budget report, including measures to give families on Child Tax Credit more leeway when changes in their income affected their benefits payments.
But he suggested Britain was in the midst of a "growth recession" and rubbished Mr Brown's reasons for halving his growth forecasts for this year.
"He has tried to blag his way through it by blaming the problems on the oil producers and slow growing Europe," said Mr Cable.
"And he knows this is complete nonsense. If the problem is oil, why is it that oil importing in the United States is booming and also Japan.
"If the problem is a slow growing Europe, why has Britain been consistently outperformed by Sweden and Spain."
Mr Cable said the real problems lay in Britain, arguing that the slowdown in consumer spending was largely caused by growing anxiety about private debt.
He suggested the chancellor ask Tony Blair to give him a seminar on how to "do humility".
But Mr Brown countered by saying the Lib Dems had dropped their tax policies but were still making spending promises.