Theresa May has defended her proposed Brexit deal in the Commons in the face of sustained criticism from the opposition and many Conservative MPs.
She said the deal delivered on the result of the EU referendum - and MPs will get to vote on it on 11 December.
But she admitted she was not "entirely happy" with the "backstop" contingency plan to avoid a hard border in Ireland.
Jeremy Corbyn said "ploughing on" with a deal opposed by the public and MPs was an "act of national self-harm".
The Labour leader suggested Parliament would have "little choice" but to reject the deal when MPs vote on it.
A host of former Tory cabinet ministers, including Iain Duncan Smith, Boris Johnson, Owen Paterson, Michael Fallon and Dominic Grieve, also said the deal was unsatisfactory, during the two-and-half hour debate.
Lib Dem leader Sir Vince Cable joined a number of Labour MPs and the Green Party's Caroline Lucas in calling for the prime minister to back another EU referendum "with the option of remaining in the European Union".
Mrs May rejected all of these calls and told Sir Vince it was time to "deliver on the choice the British people made" in the 2016 referendum.
What was May's pitch to MPs?
Mrs May said there had been "give and take" in the 19-month negotiations but the final agreement "delivered for the British people" by regaining control of laws, money and borders.
She acknowledged concerns over arrangements to avoid the return of physical checks on the border between Northern Ireland and the Republic of Ireland, which could see the UK entering a customs arrangement with the EU - known as the "backstop".
The "backstop" was an "insurance policy no-one wants to use," Mrs May told MPs, and she insisted the UK would have the right to determine whether it came into force if the UK's future relationship was not settled by the end of 2020, as she hoped it would.
A backstop of some kind would be required, she said, due to the UK's obligation to uphold the Good Friday Agreement, the Northern Ireland peace deal signed 20 years ago, adding "there is no deal that comes without a backstop and without a backstop there is no deal".
She also insisted she had stood firm in the face of repeated EU attempts to link access to British waters for their fishermen to future trade arrangements, amid claims from the SNP and others that her deal had "sold out" Scotland's fishermen.
The PM also said she regretted saying in a speech last week that Brexit would prevent EU migrants "jumping the queue". The comments sparked an angry backlash from EU citizens living in the UK.
How Corbyn and other MPs responded
The Labour leader said Mrs May had brought home a "botched deal" that would "leave the UK worse off" and that "ploughing on is not stoic, it is an act of national self-harm".
He said the prime minister needed a "plan B" involving a permanent customs arrangement and stronger employment and environmental protections, which is Labour's Brexit policy.
"This deal it is not a plan for Britain's future," he added and that was why MPs had "little choice" but to reject it.
Caroline Flint, one of the few Labour MPs who have signalled they could vote for the deal, urged Mrs May and Mr Corbyn to hold face-to-face talks to reach an accommodation acceptable to both parties.
A Downing Street spokesman said the prime minister had "no plans" to reach out personally to Labour MPs who might back a deal, although her chief of staff had invited opposition MPs to a briefing on the agreement on Monday evening.
The SNP's Iain Blackford said the agreement was "full of ifs and buts" which would result in Scottish fishermen being "sold out".
And the DUP's Nigel Dodds said the backstop "was bad for the United Kingdom and bad for the economy" and absolute certainty was needed over its legal application.
Tory backbencher Mark Francois was among a host of MPs to urge PM to think again, claiming the agreement was "as dead as a dodo" and "would not get through" Parliament.
"The House of Commons has never surrendered to anyone," he said. "It won't start now."
And former defence secretary Sir Michael Fallon, previously regarded as a loyalist, said it would be a "huge gamble" for the UK to "surrender our vote and our veto without any firm commitment to frictionless trade" outside the EU.
Former Foreign Secretary Boris Johnson said it was "hard to see" how the deal could provide certainty to business when cabinet ministers were saying different things about what they wanted.
Following the debate, Mrs May was due to host more than 100 investors and employers from sectors including manufacturing, retail, food and drink and financial services to discuss the Brexit plan.
Analysis by the BBC's Iain Watson
Theresa May told MPs her plan was in the national interest, delivering on the referendum result while protecting the economy.
But if this debate is a taste of things to come, the prime minister is in big trouble.
One MP after another, Remainers and Leavers alike, and across all parties, spoke out against Mrs May's plan.
Indeed rarely can a prime minister have received such a mauling. Mrs May now has just over two weeks to try to rally support in Parliament.
Asked repeatedly by MPs what the "Plan B" was if she lost the vote, she avoided a direct answer.