The Liberals swept back into majority power Thursday night, their numbers in the legislature bolstered by some major upsets in key Toronto ridings.

Liberal candidates knocked out three political heavyweights: Doug Holyday in Etobicoke-Lakeshore, veteran NDP MPP Rosario Marchese in Trinity Spadina, and another long-time New Democrat, Michael Prue, in Beaches-East York.

Former Toronto city councillor Peter Milczyn claimed an unexpected victory for the Liberals in the riding of Etobicoke-Lakeshore, beating out former city hall colleague Holyday. Milczyn snagged more than 20,000 votes, beating Holyday by 14 per cent of the vote. The two candidates had faced off in a previous byelection, which Holdyay narrowly won in 2013.

The Liberals also claimed the downtown riding of Trinity-Spadina, where candidate Han Dong claimed victory over NDP incumbent Rosario Marchese, who had represented the neighbourhood since 1990.

Meanwhile in Beaches-East York, Liberal Arthur Potts knocked out Prue by just a few hundred votes.

Prue, who was mayor of East York in the 1990s, had represented the riding at the provincial level since 2001.

Another key downtown win was in Davenport as Liberal candidate Christina Martins beat out NDP incumbent Jonah Schein by 1,800 votes.

It was a nail-biter in Thornhill Thursday night as Liberal candidate Sandra Yeung-Racco beat out PC incumbent Gila Martow by just 76 votes. Yeung-Racco claimed victory with 21,295 while Martow snagged 21,219. Martow won the riding in a snap by-election back in February following the firing of MPP Peter Shurman over a $20,000 allowance scandal.