The truck driver fled following the collision but was apprehended by police and taken into custody, Ventura County Fire spokeswoman Margaret Remmen said. She did not know what charges the driver was facing.
The fiery crash, just before 6am local time in Ventura County, north-west of Los Angeles, overturned at least three double-decker Metrolink rail cars. Two other cars derailed but remained upright. The force of the collision smashed the truck apart and television images showed burned-out chunks smouldering hours later.
There were no fatalities in the crash but 28 people were taken to six hospitals, some suffering significant head, neck and back traumas or broken bones, said Steve Carroll, Emergency Medical Services administrator, told reporters. Another 23 people were treated for lesser injuries at the scene, he said.
Authorities said the train, which had been travelling at 79 miles per hour (127kph) before the crash, had anticipated the impact from some distance and had initiated emergency protocols before hitting the truck.
The incident caused significant delays.