The collision caused “significant damage” to the top of the double-decker bus in the crash in Winchester, Hampshire, at 8.10am on Thursday.
A Hampshire Police spokesman said that the three pupils taken to hospital suffered serious but not life-threatening injuries.
He said: “We were called at 8.10am today, 10 September, to reports of a serious collision on Wellhouse Lane, Winchester, after a school bus collided with a railway bridge causing significant damage to the top of the bus.
“Three students with serious, but not life-threatening injuries, have been taken to hospital.
“A further 13 students with minor injuries have been dealt with at the scene.
“All the students involved are aged between 11 and 16.
“A road closure is in place on Well House Lane from the junction with Andover Road North to School Lane to enable us to deal with this incident. We thank you for your patience.
“We are working in cooperation with the school and Hampshire County Council children’s services to provide support to the students and their parents.”