Officials said part of the bridge collapsed as the express train went over, sending five cars crashing to the ground, with one of them landing in the water.
At least 17 dead as Cyclone Fani batters India, Bangladesh
Scores of people were trapped in the accident at Kalaura, 300 kilometres (185 miles) from Dhaka.
Local people joined fire and police teams in pulling the dead and injured out of the wreckage, Rashidul Hasan, a police superintendent, told AFP.
Regional government administrator Tofael Islam said part of the bridge gave way as the train was crossing.
Twenty-one of the injured were taken to a hospital in Sylhet, the nearest city, in serious condition.
Bangladesh skyscraper inferno death toll rises to 25
Train services from Dhaka to the northeast were stopped because of the accident.
Train accidents are common in Bangladesh because of poor signalling and rundown tracks.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ