Jeremy Corbyn failed to make a breakthrough in the English local elections, as the Conservatives saw off Labour challenges in key battleground councils.
In a night of mixed fortunes for the two major parties, Labour took Plymouth from the Conservatives but was unable to seize Tory "crown jewel" authorities in London, where it had hoped to make gains.
Hillingdon remained in Conservative hands and Mr Corbyn's party fell well short of the upsets some had predicted in Tory strongholds Wandsworth, Westminster, and Kensington and Chelsea.
Check the results where you live from your local ITV region:
Labour also failed in its bid to take control of top target Barnet, which was gained by Tories from no overall control.
There were indications that the row over anti-Semitism may have hit Labour's vote in Barnet, an area of north London with a large Jewish community.
Former Labour councillor Adam Langleben, who lost his seat in West Hendon, tweeted: "No community group should have their vote dictated by their safety. That should shame us."
Prior to the vote, ITV News Political Correspondent Paul Brand said he was "astounded by the strength of feeling among the Jewish community in Barnet", adding: "In a group of 8 people we spoke to at a reformist synagogue, two had torn up their Labour membership, with only one saying they could vote Labour again."
Tweeting after the results were announced, Brand said he was "not surprised" that Barnet had remained under Conservative control.
The Conservatives gained control of councils in Peterborough, Southend and Basildon, and saw a small swing in their favour outside the capital, but lost Trafford, their flagship council in the North West, to no overall control.
The chairman of the 1922 Committee of Conservative backbenchers, Sir Graham Brady, described the loss of Trafford to no overall control after 14 years as "deeply disappointing".
Party chairman Brandon Lewis told Sky News: "It's been a good night for us.
"We've done better than expected and we have seen Labour - who thought they would be sweeping the board in London - thus far not gaining a single council in London.
"Eight years into a government, Labour was losing 4,000 councillors, whereas we at the moment are holding councils and in some areas making positive inroads."
Theresa May's party appeared to have benefited from an almost total collapse in the Ukip vote, which saw the Eurosceptic party shed councillors across the country.
The one point of light for Ukip was Derby, where the party held one seat and picked up another, unseating Labour's leader in the city. Former deputy chairwoman Suzanne Evans openly discussed the prospect of the party "crumbling".
Labour sources described their results as "solid", saying that the party had consolidated advances made at last year's general election.
On a visit to Plymouth to celebrate Labour seizing control of the city's council, Jeremy Corbyn said that "winning in Plymouth is a sign that Labour is back in this part of the country".
The Labour leader also tweeted his thank to the party's supporters and campaigners.
But the party suffered from a failure to damp down expectations in a set of elections where its activists, and members of the Corbyn-backing Momentum organisation, put in massive efforts on the doorsteps.
Labour London Mayor Sadiq Khan said last year that there was "no corner" of the city where the party could not win and insisted they could challenge the Tories "even in their crown jewels of Wandsworth and Barnet".
And shadow chancellor John McDonnell raised the prospect last month of the party securing a "significant victory"in Hillingdon.
Carrie Symonds, the Conservative Party's director of communications, said Labour "threw the kitchen sink" at Wandsworth, adding it was "brilliant news" that they had failed.
Shadow cabinet minister Jonathan Ashworth acknowledged that Labour had "a lot of work to do", but insisted it was making progress across the country creating "a basis we can build upon for the next general election".
Mr Khan, speaking at the Wandsworth count, said: "What I'd be disappointed by was if we didn't make progress across London in terms of the numbers of councillors."
While the two main parties both lost control of key councils outside the capital, Mr Corbyn's party lost Nuneaton and Bedworth - an area of Warwickshire that often indicates the colour of the government at general elections, as well as Derby, with both falling to no overall control.
Elsewhere, Labour fell short of gaining control in areas like Worcester, Dudley and Walsall, where they had hoped to establish middle England strongholds.
The Liberal Democrats gained control of the London Borough of Richmond upon Thames, a heavily Remain voting area, from the Conservatives.
Speaking in west London, former Richmond Lib Dem MP Sarah Olney said that the results show that the Lib Dem’s are back as a political force in London.
Speaking on the Conservatives' result, former party chairman Grant Shapps, who has been highly critical of Mrs May's leadership, said Number 10 and Tory headquarters had "got their act together".
He told BBC News: "Four years ago I was looking at a Conservative vote of 30% in the polls and today I expect Theresa May will be looking at significantly more than that - I imagine in the upper 30s, maybe near 40."
Most councils counted votes overnight but others will declare results during the day on Friday.
Across England, more than 4,000 seats were contested in around 150 councils, including all 32 London boroughs, as well as every ward in Birmingham, Manchester, Leeds and Newcastle.
Mayoral elections were held in Hackney, Lewisham, Newham, Tower Hamlets, Watford and the Sheffield City region.
Voters in some areas piloting controversial ID trials were reportedly unable to cast their ballot after failing to bring identification with them.