Police said they retrieved 28 bodies from the private passenger bus after it veered off the road and fell into the canal in the Mandya district of the southern state of Karnataka.
A police officer at the scene told AFP that many of the victims were school children returning to their homes.
"Many children are among the 28 dead," a police official told AFP by phone.
Police could not provide the exact number of passengers on board or the cause of the crash but said the driver was apparently speeding.
Local media said around 35 people were in the vehicle.
Video footage on television showed locals using ropes to reach the submerged bus and pull out the bodies.
Emergency workers and divers joined the volunteers to help.
State chief minister H.D. Kumaraswamy promised help to the families.
Road crashes in India claim the lives of more than 150,000 people each year. Most accidents are blamed on poor roads, badly maintained vehicles and reckless driving.
Some 50 people were killed in neighbouring Telangana state in September after a bus plunged into a valley in September.
On Thursday six school pupils were killed after their van collided with a bus in central Madhya Pradesh state.