Goldsmith, also a failed candidate for the London mayoralty earlier this year, had a 23,000 vote majority going into the by-election, which was triggered by his resignation from the Conservatives following the Theresa May administration's backing for Heathrow airport expansion.
The successful Lib Dem candidate said she now had a mandate from her constituency to vote against Brexit if it came to a vote in the House of Commons.
*Read more*: It's official - Zac quits over Heathrow decision
Olney said in her victory speech that it had shown Richmond Park voters were rejecting the "Ukip vision" in the UK and the US.
"We will defend the Britain we love...the people of Richmond Park have sent a shockwave".
The Labour party lost its deposit by running in the seat.
Zac Goldsmith has been unseated in a "shockwave" by-election upset by the Liberal Democrats. Sarah Olney bulldozed Mr Goldsmith out of the Commons, finishing 1,872 votes ahead of him. The Lib Dems poured resources into the contest as they successfully switched the focus of the campaign to Brexit in...