Flames burst out of one train car as another car was snapped in half in the crash. Rescue crews and fellow passengers pulled bodies through broken windows and pried open doors as stunned survivors looked on.
Maria Vigo, whose home is on the bank above the rail tracks, told CNN how she heard a crash, and then the deafening squeal of metal on concrete.
"When I saw the rail car flip into the air, I imagined something just horrible had happened," she said.
She and husband Suso sought to help the injured, taking bed sheets to wrap round the injured and ropes to haul the survivors off the tracks.
Firefighter Miguel Angel Bello said the first four minutes after he arrived on the scene were a desperate race against time.
He and fellow firefighters smashed windows and kicked in doors to pull out the passengers trapped inside as rail cars went up in flames.
A young girl in the wreckage called out to him. "She was under wreckage she said she wanted to get out and go home but she died," he said.
Survivor: We looked like the walking dead
Stephen Ward, an 18-year-old from Bountiful, Utah, who is in Spain serving on a Mormon religious mission, was one of the lucky ones.
Still patched up and wearing a neck brace, he told CNN's "New Day" show of his ordeal -- and his relief that he made it out alive and without permanent injury.
Ward blacked out when the car he was in slammed on to its side, regaining consciousness only as he was being helped out of the train.
It took him a couple of minutes to grasp that what he was seeing outside was not a dream -- and that people were dead. "They were helping out other people -- there were bodies, there was screaming, there was smoke."
The survivors looked like the walking dead, he said. "I've got staples all over my scalp, I was covered in blood. They've scrubbed most of it off me now but everyone was just covered in their own blood and occasionally the blood of others. It was gruesome to say the least."
Another victim, speaking from a hospital bed with his arm in a sling, told CNN affiliate Atlas that it seemed like the train was going fast.
"But we didn't know what was the maximum speed, so I thought it was normal," he said, "And suddenly there was a curve, the suitcases fell, and everything went dark. And I hit my head a ton of times, and 10 seconds later I was wedged between seats, and I had people's legs on top of me."
As he waited for rescuers to pull him from the wreckage, he heard other passengers yelling.
"I heard little children screaming. ... I also heard two girls that yelled out, one supporting the other," he said.
The derailment came on the eve of a public holiday to celebrate a saint's day, when more people than usual may have been traveling in the region. Planned festivities in Santiago de Compostela and across Galicia were canceled after the crash.