Another 24 people were reported to be seriously injured, in the accident on a railway crossing between Millas and Saint-Féliu-d'Amont.
The students on the bus are reported to be between the ages of 13 and 17.
Pictures from the scene showed the school bus sheared in two by the force of the crash.
Around 70 emergency workers and four helicopters were deployed as part of the rescue effort.
The crash happened on a section of line between Perpignan and Villefranche-de-Conflent, the local news website l'Indépendant reports.