"Twenty people were killed - seven crew and 13 others, soldiers," said an army spokesman in Khartoum.
He said it was an Antonov 29 plane that caught fire and exploded.
A senior southern army official said the plane crashed on landing at the airport on Saturday when the front tyre of the plane burst.
"When landing the front tyre burst and they couldn't control the plane so it hit a building near the airport," said Elias Waya Nyipuocs, a senior official in the south Sudanese army.
He added the plane then caught fire. He could not confirm that the plane had exploded.
Sudan has a history of frequent air crashes, often involving cargo planes. Old Russian planes are used throughout the country for both military and commercial flights.