The Conservatives have comfortably seen off Labour challenges in flagship London councils.
Jeremy Corbyn’s party had made a significant push to take Tory “crown jewel” authorities but failed to make the strides needed.
The Tories retained control of Wandsworth Council, last won by Labour in 1974, after winning more than half the seats, as well as Westminster City Council.
The leader of Kensington and Chelsea Labour group conceded the party would not take overall control of the local council, which under the Tories faced a furious backlash over its handling of the Grenfell Tower tragedy.
Robert Atkinson said: “The Tories will still be in control but by a much smaller margin than last time. They’ve been humbled, finally.”
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”.
Shadow chancellor John McDonnell raised the prospect last month of the party securing a “significant victory”in Hillingdon but the Conservatives retained control.
Carrie Symonds, the Conservative Party’s director of communications, said Labour “threw the kitchen sink” at Wandsworth, adding it was “brilliant news” they had failed.
Labour sources believe the party has a “fighting chance” in Barnet.
Mr Khan, speaking at the Wandsworth count, told the Press Association: “What I’d be disappointed by was if we didn’t make progress across London in terms of the numbers of councillors.”
The two main parties, however, both lost control of key councils outside the capital.
In the north west, the Conservatives lost their only council in Greater Manchester in a defeat Labour claimed as a “huge coup”.
Mr Corbyn’s party, however, lost a Midlands council in an area that is considered a bellwether seat at the general election, but it picked up Plymouth from the Conservatives.
After 14 years of Tory rule at Trafford Council it went to no overall control.
Sir Graham Brady, chairman of the Conservative 1922 committee of backbenchers, told BBC News: “It’s deeply disappointing for me and for a lot of Trafford residents.”
Labour lost Nuneaton and Bedworth council, an area that often indicates the colour of the government at general elections, as well as Derby, with both falling to no overall control.
The Conservatives gained Basildon and Peterborough, which had both been under no overall control.
Support for Ukip has collapsed with the party winning just two seats nearly seven hours into counting.
Labour sources insisted the results so far showed it had consolidated its vote since the general election and said the Ukip vote was following the results of the national poll, with around two thirds going Tory and one third Labour.
The Liberal Democrats gained control of the London Borough of Richmond upon Thames, a heavily Remain voting area, from the Conservatives.
Conservative former party chairman Grant Shapps, who has been highly critical of Prime Minister Theresa May’s leadership, said No 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 are counting 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.