The Taliban targeted the Afghan Ministry of Defense logistics center at around 8:55 a.m. local time with a car bomb followed by a ground assault, Interior Ministry spokesman Nasrat Rahimi said.
Officials said 51 schoolchildren were among the injured. Five schools were damaged in the attack, an Education Ministry spokesman said.
Security forces waged an eight-hour gun battle with insurgents before the attack was neutralized. All five of the fighters who had attacked the logistics center were killed, Rahimi said.
The logistics center is in an area that houses a number of government offices and a local TV station.
The Taliban claimed responsibility for the attack in Kabul, which took place just days after a new round of peace talks with the US got underway in Qatar.
The conflict has spanned some 18 years and three US administrations, and has cost more than 2,400 American lives and billions of US dollars.
More Afghan civilians were killed in the conflict in 2018 than at any time since the United Nations began keeping records in 2009, according to a UN report released in February. The report said 3,804 people died in 2018, including 927 children.
Journalist Ehsan Popalzai reported from Kabul. Tara John wrote from London.