Bodies littered the scene and a huge plume of smoke rose from the area which houses foreign embassies. However, it was not immediately clear what the target was.
Witnesses described dozens of cars choking the roads as wounded survivors and panicked schoolgirls sought safety, with men and woman struggling to get through security checkpoints to search for loved ones.
"A car bomb" exploded at 8:25 am, Najib Danish, an interior ministry spokesman, told AFP. He said at least 40 people had been killed or wounded, but could not give a breakdown of the casualties.
"By God's grace, Indian Embassy staff are safe in the massive #Kabul blast," India's foreign minister Sushma Swaraj tweeted. The Indian embassy is among those close to the area.
More From This Section
There was no immediate claim of responsibility, but the attack came as the resurgent Taliban are stepping up their annual "spring offensive".
The Islamic State group has also claimed responsibility for several recent bombings in the Afghan capital, including a powerful blast targeting an armoured NATO convoy that killed at least eight people and wounded 28 on May 3.
Afghan troops are backed by US and NATO forces, and the Pentagon has reportedly asked the White House to send thousands more troops to the country to break the deadlocked fight against the Taliban.
US troops in Afghanistan number about 8,400 today, and there are another 5,000 from NATO allies, who also mainly serve in an advisory capacity -- a far cry from the US presence of more than 100,000 six years ago.
The blast was the latest in a long line of attacks in Kabul. The province surrounding the capital had the highest number of casualties in the first three months of 2017 thanks to multiple attacks in the city, with civilians bearing the brunt of the violence.