The blast happened near Vishvamadu, a town in the north of the Indian Ocean island recently captured by the military in battle against LTTE.
"Two officers and 18 others were killed from the army, two officers injured and 48 others injured. Eight civilians were killed and 40 others injured. Many of them are women and children," military spokesman Brigadier Udaya Nanayakkara said.
The ongoing battle between military and LTTE, has seen an increase in the rate of civilians fleeing with at least 17,300 fleeing since Thursday, Feb 5 out of at least 21,627 so far this year, according to military tallies.
"We are trying to save Tamil people, but LTTE is not allowing us to do that and they have exploded a suicide bomb among civilians," Media Minister Anura Priyadarshana Yapa told sources.
The government, aid agencies and rights groups have accused the LTTE of forcibly keeping civilians in the war zone as human shields and for use as conscripts and labourers.
OneIndia News (With inputs from Agencies)