Independent candidate Zac Goldsmith, left, and Liberal Democrat candidate Sarah Olney, right hear the results of the Richmond Park by-election count | Chris J Ratcliffe/Getty Images Brexit backlash sees Lib Dems pull off by-election win Ex-Conservative MP Zac Goldsmith booted out as Sarah Olney records huge swing since 2015 election.

The Liberal Democrats overcame a 23,000 Conservative majority to secure the southwest London seat of Richmond Park in a shock by-election win Thursday that is widely seen as a de facto verdict on Brexit.

The Lib Dems' Sarah Olney ended the night on a 1,872 margin, winning 20,510 votes and recording a huge swing since the 2015 election. Former Conservative MP Zac Goldsmith came second on 18,638 votes, while Labour's Christian Wolmar managed just 1,515.

Goldsmith, who triggered the by-election when he resigned from his party to protest the government’s plan to build a third runway at nearby Heathrow Airport, stood as an independent with no Tory challenger. In the 2015 election when he ran for the Conservatives, Goldsmith won 58.2 percent of the vote, trouncing the Lib Dems' Robin Meltzer, who came in second on 19.3 percent, and Labour's Sachin Patel on 12.3 percent.

"The people of Richmond Park and North Kingston have sent a shockwave through this Conservative Brexit government, and our message is clear: we do not want a hard Brexit, we do not want to be pulled out of the single market, and we will not let intolerance, division and fear win," Olney said after her win.

This story has been updated with additional information.