At least 28 people have been killed and 329 injured in a huge explosion in the centre of the Afghan capital Kabul, health ministry officials say.
A suicide attacker detonated a vehicle and gunmen stormed the area, reports say. Officials say the gunfight is now over and the area has been cleared.
A Taliban spokesman said the group carried out the attack.
It comes a week after it said it was launching its "spring offensive", warning of "large-scale attacks".
Tuesday's bombing happened during the morning rush hour in a residential neighbourhood close to the ministry of defence and military compounds.
Soldiers and security officers are reported to be among the casualties, but the majority are civilians.
The blast shattered windows 1km away. The Associated Press quoted a police officer as saying it was one of the most powerful explosions he had ever heard, and he could not see or hear anything for 20 minutes after.
It appears the initial blast cleared the way for Taliban fighters to enter the area - a commonly used tactic.
Unconfirmed claims suggest they managed to breach the defences of the National Directorate of Security, the main spy agency which protects high-ranking government officials.
The presidential palace - only a few hundred metres from the blast - condemned the attack "in the strongest possible terms".
"Such cowardly terrorist attacks will not weaken the will and determination of Afghan security forces to fight against terrorism."
A tweet from President Ghani's office's official account suggested the attack "clearly shows the enemy's defeat in face-to-face battle with ANSDF" - the Afghan National Security and Defense Forces.
Today's terrorist attack near Pul-e-Mahmud Khan, #Kabul clearly shows the enemy's defeat in face-to-face battle with ANSDF.— ارگ (@ARG_AFG) April 19, 2016
The Taliban has over the past year enjoyed a resurgence, buoyed by the withdrawal of most NATO and US forces at the end of 2014, and a flood of foreign fighters joining their ranks.
It now controls sizeable parts of Afghanistan.
- BBC / Reuters