Rescuers struggled to recover bodies and help the injured to safety after the bus plunged into the swelling Trishuli river, off the highway at Chandi Bhanjyang village in Chitwan district.
“Twenty-one people have died in the accident and 16 have been rescued,” district chief Binod Prakash Singh told AFP, adding that the injured have been taken to a local hospital for treatment.
Singh said that rescuers were searching the area where the bus was still partially submerged to ensure no passengers were stuck inside.
The bus was heading to the tourist town of Pokhara from the southern district of Rautahat.
Accidents are relatively common on Nepal’s highways because of poor roads, badly maintained vehicles and reckless driving, and death tolls running into double figures are frequent.
At least 25 people were killed last week when a crowded bus veered off a hilly road in Nepal’s Kavre district and fell some 500 metres down a slope.