Prime Minister Theresa May has called for a General Election to be held on 8 June.
In a surprise Downing Street statement the PM said she had given the country the stability it needed and delivered Brexit.
A fresh election was in the country's national interest, she said, according to the BBC.
She said Britain needed certainty, stability and strong leadership following the EU referendum.
"The country is coming together but Westminster is not," May said. She had previously ruled out calling an election on several occasions.
"I have concluded the only way to guarantee certainty and security for years ahead is to hold this election," she explained.
There will be a Commons vote on the proposed election on Wednesday. May will need Parliament's backing to hold a vote before 2020.
Labour leader Jeremy Corbyn said he welcomed the prime minister's decision, saying it would "give the British people the chance to vote for a government that will put the interests of the majority first."
I welcome the PM's decision to give the British people the chance to vote for a government that will put the interests of the majority first pic.twitter.com/9P3X6A2Zpw— Jeremy Corbyn MP (@jeremycorbyn) April 18, 2017
Scotland's First Minister Nicola Sturgeon accused the Conservatives of seeing "a chance to move the UK to the right, force through a hard Brexit and impose deeper cuts", adding: "Let's stand up for Scotland".
Lib Dem leader Tim Farron tweeted: "This is your chance to change the direction of your country."
This is your chance to change the direction of your country pic.twitter.com/wfj4wC7yn3— Tim Farron (@timfarron) April 18, 2017
May had taken over from David Cameron following the Brexit vote last June.
Some argued she had run the country without a clear mandate.
Our weekly heads-up for advisers
'Pleased Unbiased has clarified'
The chairman isn’t answering his email
Reforms not enough
An economic cocktail