"One of our helicopters crashed because of very bad weather There were 19 soldiers on board who died," said the official, who did not want to give his name.
The Russian-made M-17 helicopter was taking food to soldiers when it crashed at 1300pm (1000 GMT), the official added.
He confirmed earlier information that the helicopter went down in the Domaya area west of the state capital, Nyala.
Sudan's army has acknowledged weekend clashes with Darfur rebels, even as the government has called for moving up the next round of peace talks.
In a statement on Monday, the army said fighting on Saturday and on Sunday began with a rebel attack on a civilian convoy the army was escorting in the western region.
But the Justice and Equality Movement, one of two main Darfur rebel groups, had said the army attacked its positions first.
The army, in the statement carried by the official news agency, said that a captain and two privates were killed by rebels but that its troops forced the rebels to retreat.
The army statement accused the rebels of burning villages during the fighting and said it called in the air force to strike rebel positions but did not bomb villages.
It was not known whether civilians were killed or wounded in the weekend fighting.
Several rounds of peace talks and repeated declarations of cease-fires have done little to quell the violence in Darfur.
The next round of peace talks is scheduled to open on 24 August in Nigeria under the African Union's auspices.
Rebels from ethnic African tribes took up arms in Darfur in February 2003, complaining of discrimination and oppression by Sudan's government.
Since then, at least 180,000 people have died, many from hunger and disease.