Several workers of Infrabel, Belgian railway infrastructure manager, were mowed on a level crossing in Morlanwelz, south of Belgium.
The accident that occurred on Monday night killed two people, leaving one missing and seven others wounded, the railway police said.
The workers of Infrabel were doing repair work after a car hit the railway line.
During the operation, the damaged train broke off and mowed down workers. It then struck a passenger train near La Louviere, injuring five other people.
Rescuers in the region have got the support of the outside, reports Xinhua news agency.
"The railway family is in mourning tonight. We are very shocked, very moved, "said Luc Lallemand, CEO of Infrabel.
An investigation will try to determine the exact cause of the accident.