Indian Prime Minister Manmohan Singh conveyed India's "outrage" over Friday's assault that killed at least 16 people in all, and requested Karzai "ensure full security for Indian nationals in Afghanistan," a statement from Singh's office said.
It said Karzai promised a full investigation into the attack, which targeted an area of residential hotels in the Afghan capital rented by Indian Embassy workers and other foreigners. An Italian diplomat and a French filmmaker also died.
It follows attacks on India's Embassy in Kabul in July 2008 and October 2009.
A Taliban spokesman claimed responsibility for Friday's attack. He did not specifically name India as the target, but the Islamist militia has long opposed India's involvement in the country and its ties to the Northern Alliance that helped the U.S. oust the Taliban regime in 2001.
"This attack specifically targeted Indian cooperation experts and workers, those who are serving the Afghan people and earning goodwill for India," Indian Ambassador to Afghanistan Jayant Prasad said. "It's clearly the handiwork of those who oppose our presence in Afghanistan."
He said India sent an air force jet Saturday to repatriate the bodies of the dead Indians.
Prasad refused to point the finger specifically at archrival Pakistan or say whether it would damage Pakistan-India talks which resumed Thursday after a 15-month hiatus.
India accused a Pakistani spy agency of involvement in the July 2008 embassy attack, and Pakistani militants waged the November 2008 attacks in India's financial hub, Mumbai, that had prompted India to pull out of the peace dialogue.
"That's too much to speculate," Prasad said of the possibility that Friday's attack could derail talks. "It depends on where the precise provenance of the attack is. We are still looking at that."
Associated Press writer Kay Johnson in Kabul contributed to this report.