At least 33 people were injured in the incident, four of them seriously, police said.
The accident occurred around lunchtime on Friday near Epfendorf, 80 kilometres south-west of Stuttgart in Baden-Württemberg.
The collision happened as the slow-moving articulated truck became stuck while negotiating a crossing on the rail line.
The train rammed into the vehicle and ploughed it 50 metres along the tracks before coming to a standstill.
Twenty-seven of the 60 passengers on board the regional train were injured, most of them not seriously.
A man and a woman who had been driving the transporter truck were also hurt.
Four people were seriously hurt in the incident and were flown to hospital by helicopter.