The powerful explosion, which struck at 8:00 am (0330 GMT) in the Shah Shaheed southeastern residential district, also injured about 40 passers-by including many children going to school, officials said.
Nine Afghans including two children died, along with two US soldiers and four NATO-contracted civilians who were travelling through the city's busy rush-hour traffic.
A Western military source in Kabul said the two soldiers and three of the contractors were from the United States, without giving further details.
One NATO sports utility vehicle was completely destroyed in the blast and surrounding streets were quickly cordoned off as US troops arrived at the scene. Schoolgirls fled the area in tears as the clean-up operation began.
Also Read
Today's bomb was the first major attack in Kabul since March 9 when a suicide bomber on a bicycle killed nine people outside the defence ministry during a visit by US Defence Secretary Chuck Hagel.
It further underlined the capital's vulnerability to militant assaults as 100,000 NATO troops gradually withdraw from Afghanistan ahead of the end of international combat operations next year.
"All our windows are shattered. I rushed outside to bring my little brothers and sisters from school. I saw five or six people covered in blood who were being taken away in police vehicles."
Afghan health ministry official Sayed Kabir Amiri said local hospitals confirmed nine Afghans had died and 39 were wounded.
Two children aged six and 10 were among the dead. "Some of the bodies are badly damaged and can't be identified," Amiri added.
NATO's US-led International Security Assistance Force (ISAF) said in a statement that two soldiers and four ISAF civilians died. It declined to identify nationalities in line with coalition policy.