The government has won the tuition fees vote, but its majority has been slashed from a notional 84 to just 21.
Ministers managed to persuade 323 MPs to back them, while the Labour opposition and Lib Dem and Tory rebels combined to win 302 votes.
A second motion, that draft regulations implementing the changes be approved, was passed with exactly the same result.
For the main vote 21 Lib Dem MPs voted against the coalition government. Eight abstained and 28 voted with the party's ministers.
The Lib Dem rebellion also led to two junior ministerial aides, Mike Crockart and Jenny Willott, resigning their posts.
Six Conservatives rebelled. Among them was Colne Valley's new MP Jason McCartney, who said he believed the £9,000 cap "sends out the wrong message".
"It was with a heavy heart that I voted against the government despite a number of worthwhile concessions, including a hardship fund for poorer students, being made this week," he said.
"I think this was far too big a hike in fees. It's my opinion that the trebling of fees would saddle students with huge levels of debt and deter many from poorer backgrounds from applying to university."
The government victory means plans to raise the tuition fee cap to £9,000 from September 1st 2012 will now go ahead.
A relieved Vince Cable, who had earlier been heckled and jeered in the Commons by Labour MPs, said the vote was an "important step" towards implementing the coalition's agenda.
"Under our proposals no student will have to pay upfront for tuition and both parties in the coalition have worked hard to develop a much fairer and progressive graduate contribution scheme," the business secretary pointed out.
Others were less impressed, however. Benjamin Ramm, editor of the Liberal magazine, said the vote "damages the Liberal Democrats beyond repair".
"For the party that called itself 'the real alternative', today is at best a capitulation, at worst a betrayal," he commented. "In this coalition, the Lib Dems are the cloak that hides the dagger."
Senior coalition figures will hope the result puts to bed the extraordinary crescendo of student protests which reached its height outside parliament this afternoon.
Demonstrators reacted angrily, however, booing and chanting "shame on you" as news of the result filtered through.
Shadow business secretary John Denham said the vote represented a "moment of no return" for Nick Clegg and the Lib Dems.
"They have lost all credibility with the country and cannot now claim to be a party of fairness," he said.
"The government is tripling fees and cutting public funding for university teaching by 80%, leaving English students facing the highest public university fees in the industrialised world.
"This was only made possible by the support of Liberal Democrats - they should hang their heads in shame."
The National Union of Students, whose protest last month descended into violence at Millbank, claimed it had won the arguments despite the defeat.
President Aaron Porter said he was "incredibly disappointed and angry with politicians", but insisted his union's campaign would not come to an end.
"Our protests and our work have sparked a new wave of activism which will grow stronger by the day," he pledged.
"As they come for the education maintenance allowance, as they seek to raise interest rates on our loans and as they peddle lies about fairness we will expose their betrayal. I am incredibly proud of the student movement today and we stand ready to fight the next stage of this campaign together. Our future is at stake."