The Conservatives have taken a string of former Labour strongholds, as an exit poll suggests they are set to win the general election.
Labour have lost seats in the north of England and Wales in areas that voted Leave in the 2016 EU referendum.
The results point to the BBC/ITV/Sky exit poll suggesting a Tory majority of 86 as being broadly accurate, although most seats have yet to declare.
Labour is on course to lose 71 seats, the exit poll suggests.
The Scottish National Party have made their first gains of the night, taking Rutherglen and Hamilton West from Labour and Angus from the Conservatives.
Some constituencies, such as Darlington or Workington, in the north of England, will have a Conservative MP for the first time in decades.
But Labour took Putney, in south-west London, from the Tories.
Labour's vote is predicted to be about 8% down on the 2017 general election, with the Conservatives up slightly and the smaller parties having a better night.
The exit poll taken at 144 polling stations, with 22,790 interviews. suggests the Tories will get 368 MPs - 50 more than at the 2017 election - when all the results have been counted.
Labour would get 191, the SNP 55, the Lib Dems 13, Plaid Cymru three, the Greens one, the Brexit Party none and the SNP 55.
It would be the biggest Conservative victory since 1987 and Labour's worst result since 1935, the poll suggests.
The pound surged against the dollar after the exit poll figures were announced as polls closed at 22:00 GMT, with sterling gaining 3% to $1.35 - its highest level since May last year.
Home Secretary Priti Patel said the government will move quickly to "get Brexit done" before Christmas by introducing legislation in Parliament, if it is returned to power.
A row has already broken out at the top of the Labour Party over who is to blame for what is expected to be its worst general election result in decades.
Leave-supporting Labour chairman Ian Lavery, who held his seat with a reduced majority, said he was "desperately disappointed", adding that voters in Labour's "heartlands" were "aggrieved" at the party's Brexit stance.
Shadow chancellor John McDonnell told the BBC the exit poll was "extremely disappointing" for Labour if it was correct.
"I thought it would be closer," he said, and blamed what he called a "Brexit election," when Labour had been hoping "other issues could cut through".
He told the BBC's Andrew Neil decisions would be made about party leader Jeremy Corbyn's future when the actual results were in.
Some Labour candidates have criticised Mr Corbyn's leadership.
Gareth Snell, who said he expected to lose Leave-voting Stoke Central to the Conservatives, called for Mr Corbyn and Mr McDonnell to go but also blamed anti-Brexit members of Labour's top team for pushing the party towards a Remain message.
Downing Street said in a statement that if the exit poll is correct, and Boris Johnson returns to Downing Street, there will be a minor cabinet reshuffle on Monday.
The Withdrawal Agreement Bill, paving the way for Brexit on 31 January, would have its second Commons reading on Friday, 20 December.
A major reshuffle would take place in February, after the UK has left the EU, No 10 added, with a Budget statement in March.
'Get Brexit done'
This is the UK's third general election in less than five years - and the first one to take place in December in nearly 100 years - and has been dominated by Britain's 2016 vote to leave the European Union.
Mr Johnson focused relentlessly on a single message - "get Brexit done" - promising to take the UK out of the EU by 31 January 2020 if he got a majority.
Labour primarily campaigned on a promise to end austerity by increasing spending on public services and the National Health Service.
The Liberal Democrats promised to cancel Brexit if leader Jo Swinson became prime minister, but opinion polls suggested their vote was squeezed during the course of the campaign.
Plaid Cymru are predicted to get three MPs, one less than they had before the election was called.
The Scottish National Party said a strong vote for them would effectively be a mandate for a second independence referendum.
SNP leader Nicola Sturgeon tweeted that while the exit poll "suggests a good night" for the SNP, she added that "what it indicates UK-wide though is grim".
Caroline Lucas, who the exit poll suggests is set to remain the Green Party's only MP, tweeted: "If this exit poll is right, it's a devastating blow for our climate, for future generations and for our democracy."
Nigel Farage said his Brexit Party had taken votes from Labour in Tory target seats, although he himself had spoiled his ballot paper "as I could not bring myself to vote Conservative".