The bomber blew himself up as a crowd of children gathered to receive pads and pens from Canadian troops on Monday.
Afghan police said about two dozen children were hurt by the blast.
Major Quentin Innis, a spokesman for the Nato-led International Security Assistance Force (ISAF), confirmed that four soldiers and a number of civilians had been killed but did not confirm how many.
A witness said the bomber had ridden a bicycle into a crowd of children as they gathered around the soldiers at the scene, around 35km west of Kandahar city.
“Kids were running towards the Canadian convoy because they were giving out pens and notebooks to the children,” Mohammed Karim told AFP.
“There was a crowd of kids laughing and shouting ‘give me one, give me one’. At this time a man riding on a bicycle approached the crowd and detonated in the crowd,” he said.
The ISAF does not comment on the nationalities of its casualties until the information has been released by their home nation. However, police at the scene of the blast said four Canadian soldiers were killed and 10 wounded.
“Also 24 kids were wounded with four of them in a very critical condition,” a district-level police official said told AFP on condition of anonymity.
The Taliban and their allies have increasingly attacked government and foreign troops this year, and security forces have responded with a series of offensives in the south and east.
The level of violence is the most intense since the Taliban government was overthrown five years ago, with about 130 foreign soldiers losing their lives this year – most of them American, British and Canadian.