About two dozen veterans and their spouses had been sitting on the parade float, set up on a flatbed truck decorated with American flags.
Many panicked as the train's horn blared, said Patricia Howle, who was waiting in her car at a nearby traffic light.
"I was on the phone, and I just started screaming," she said. "The truck was on the other side of the train, but I saw the panic on the faces of the people and saw some of them jump off."
Police said the first truck with veterans safely crossed the tracks, but the second truck's trailer was still on the crossing as the Union Pacific locomotive approached.
The scene after the crash reminded Sudip Bose, a doctor and front-line physician in Iraq, of war. He said veterans were already tending to the wounded with limited medical supplies when he arrived.
"Instincts kicked in. They were applying tourniquets, holding pressure to the wounds," Bose said.
A preliminary investigation indicated the crossing gate and lights were working, said Union Pacific spokesman Tom Lange, though he didn't know if the train crew saw the float approaching.