Organizers said the decision carried risks to safety.
But Permanent Secretary David Ward said on Thursday that allowing the Trafalgar Square section would “cause serious disruption”.
“To avoid Trafalgar Square becoming too full, we have agreed that there will be only one stage for speakers in Whitehall,” he said.
Scotland Yard estimated that around 10,000 demonstrators marched through London’s West End, rising to 20,000 for the speech in Whitehall.
Demonstrators held banners reading “End the killing” alongside images of the bloodshed since the conflict began.
Other banners proclaimed “Free the Children,” “Freedom for Palestine” and “Boycott Israel.”
Ahead of the march, the Campaign Against Antisemitism said: “Tomorrow, London will once again become a no-go zone for Jews as another anti-Israel demonstration takes place.”
“How much longer does this country have to endure before appropriate action is taken?”
Police have made arrests at various marches, including one in December that was besieged by protesters in London.
Earlier this month, 13 people were arrested during a march, mostly for carrying offensive placards.
A flyer handed out at Saturday’s march had the headline: “Western-backed Zionist Holocaust, imitating Hitler.”