The train was carrying around 40 people when it rammed into a lorry that had stopped on the railway tracks near Freihung, northeast of Nuremberg at around 2100 GMT on Thursday evening, police said.
The trailer was separated from the lorry due to the force of the collision and dragged several hundred metres by the passenger train. Both vehicles then caught fire, police said.
The 30-year-old lorry driver was killed and another body was found in the train driver’s cab, they said. The lorry’s co-driver escaped with light injuries.
Of the sixteen passengers treated for injuries, four were taken to hospital but their condition is not critical, police said.