"There must now be an election on Tuesday, 15th October," Johnson said after parliament voted in favour of a law that could force him to seek to delay Brexit by three months.
"There is only one way forward for the country," he said, calling the draft law a "surrender document" that would undermine his attempt to strike a divorce deal with Brussels.
Johnson said Labour Party leader Jeremy Corbyn would "beg" for a Brexit delay and "accept whatever Brussels demands" if he were prime minister.
"I think it's very sad that MPs have voted like this... I think it's a great dereliction of duty," he said.