A 38-year-old man is due to appear in court in connection with a crash which left 21 people injured when a train hit a sewage tanker on a level crossing.
The first of the train's two carriages was derailed in the crash at Little Cornard, Suffolk, late on Tuesday.
Suffolk Police said the man - who was driving the tanker - was appearing before magistrates in Bury St Edmunds charged with endangering the safety of the railway.
The 1731 National Express East Anglia service, which was carrying about 20 passengers and thought to have been travelling at between 50mph and 60mph, cut the tanker in two as it made its way from Sudbury, Suffolk, to Marks Tey, Essex, police said.
Locals said they helped bleeding and dazed passengers off the train and told of hearing a sound "like a bomb".
Police said seven people were kept in hospital overnight, including a 58-year-old man who suffered severe abdominal injuries.
Officers have yet to name the man charged but said he comes from Ely, Cambridgeshire.