The UK is set to go to the polls on 12 December after MPs backed Boris Johnson’s call for an election following months of Brexit deadlock.
By a margin of 438 votes to 20, the House of Commons approved legislation paving the way for the first December election since 1923.
The bill is still to be approved by the Lords but could become law by the end of the week. If that happens, there will be a five-week campaign up to polling day.
The prime minister has said the public must be “given a choice” over the future of Brexit and the country.
Mr Johnson hopes the election will give him a fresh mandate for his Brexit deal and break the current Parliamentary deadlock, which has led to the UK’s exit being further delayed to 31 January.
The PM said it was time for the country to “come together to get Brexit done”, as he left a meeting of the 1922 Committee of backbench Conservatives held minutes after the vote.
He has readmitted 10 of the 21 Conservative MPs he threw out of the party for rebelling over Brexit, allowing them to stand as Conservative candidates.
Labour leader Jeremy Corbyn said: “This election is a once-in-a-generation chance to transform our country and take on the vested interests holding people back.”
He said his party would “now launch the most ambitious and radical campaign for real change that our country has ever seen”.
Shadow Cabinet minister Andrew Gwynne said voters faced a choice between “five more years of Boris Johnson’s slash and burn politics” and a Labour government genuinely on the side of working people.
But some Labour MPs have expressed misgivings over the timing of the election, believing only another referendum can settle the Brexit question for good.
More than 100 Labour MPs did not take part or abstained in Tuesday’s crucial vote, while 11 voted against an election. A total of 127 Labour MPs, including Mr Corbyn, supported the election.
The Liberal Democrats and the SNP signalled their support for an election earlier this week, arguing it was now the best way of stopping Brexit.