Hospital workers in Baghdad say at least 12 people have been killed by explosions at an ammunition dump on the edge of the Iraqi capital.
A US officer said "hostile forces" fired flares into the depot, igniting many fires. The site contained missiles, mortars, grenades and hundreds of thousands of bullets.
The BBC's Dumeetha Luthra in Baghdad said explosions continued at the depot for some time and the site - covering an area of about one square kilometre - is said to be out of control.
The explosions, in the Zafaranyah neighbourhood of southern Baghdad, demolished at least four nearby houses.
More victims are said to be buried under rubble. Some unconfirmed reports speak of 40 people killed.
One man said he had lost six family members in the blasts, our correspondent reported from the scene.
Many Iraqis are accusing American troops of storing weapons in a residential area.
Hundreds of demonstrators took to the streets of Baghdad, chanting anti-US, pro-Islamic slogans.
But a statement from the US Central Command said "the location of the ammunition cache near a civilian population is another example of the former regime's disregard for the safety of Iraqi citizens".
US Sergeant Major Gary Coker said the flares that hit the dump were fired by "somebody who knew what a pistol flare, if that's what it was, could do if it landed on a pile of ammunition".
"It was acres of stuff," he added.
The BBC's Allan Little in Baghdad says the city is bristling with weapons, which can be easily bought and sold at markets.
US troops are trying to clamp down on this trade by storing weapons at dozens of depots around Baghdad.
In recent days, US forces have carried out controlled explosions at the same arms dump.
Many people were badly injured in Saturday's blasts, some with burned or severed limbs.
The cause of the explosions, and the precise casualty figures are hard to establish as US forces have closed off the area.
US troops were stoned by a crowd when they first reached the site and began taking victims to local hospitals.
The explosions caused extensive damage
Hundreds of people waved their fists at US troops as they were evacuated from the area.
"This is the responsibility of the US army because we told them this is a civilian area," one man said.
In one truck, people chanted, "America's no better than Saddam."
A large crowd also gathered outside the Palestine Hotel in central Baghdad, with banners saying "American forces kill the innocent" and "No bomb between houses."
An Islamic cleric led them in chanting the slogan "Yes to Islam, yes to Iraq, no to Israel, no to America."