It is thought about 17 people are injured and a train driver was trapped.
A major incident has been declared after two trains collided in Salisbury, leaving several people injured.
The collision happened near London Road and involved a South Western Railway and a Great Western service.
A train driver, who was trapped, was treated by paramedics. In total, 17 people were taken to hospital.
The crash happened at 18:46 GMT when one train hit an object in a tunnel, and the second train then collided with it due to signalling problems.
Angela Mattingly, who was on the train, said: “Everything went black and there were red flashes and everything.
“There was suddenly a lot of jostling, possessions being thrown around and I think a few people went forward and hit their heads. You just don’t know for a couple of seconds what’s happening.
“People started to panic but nobody was seriously injured.”
Lucy Gregory added: “We were just pulling into Salisbury station and the train felt a bit juddery.
“I’d just stood up and put my coat on and my phone in my pocket when there was this massive impact and I fell across the table.
“The table came off the wall and I ended up underneath another table. They smashed the windows and we got out of the window. It was really scary.”
Corinna Anderson, 51, from Derby, was on the train from London Waterloo to Salisbury, where she was due to visit a friend.
She said: “I was thrown against the wall and there was a massive rumbling.
“The first thing I was worried about was is anybody hurt. I’m a trained first aider, so I wanted to help.
“There was a lady in the carriage I was in and she was thrown off her seat and into the wall by the door.
“I did hear and see that on the Temple Meads train there was a three-week-old baby that was rescued off the train by the fire service and thankfully she is doing ok.
“As I climbed off my train I saw the fireman cradling the baby in his arms and then I saw the mother get given the baby and they were escorted away for medical attention.”
Ms Anderson said she was taken along with some other passengers to the casualty centre at St Marks Church.
“A lot of people are shook up, but generally everybody is thankful that nobody has been seriously hurt,” she said.
Dorset and Wiltshire Fire and Rescue declared the crash a “major incident”, with some 50 firefighters attending the scene.
Police, the ambulance service and coastguard helicopters were also sent to the scene.
Other train services in the area, close to Fisherton Tunnel in the city, have been halted.
A mother who was out trick or treating with her family nearby likened the noise of the crash to “a bomb”.
Tamar Vellacott, 25, said she was walking outside with her young children, around a kilometre from the scene.
“It was a noise we’ve never heard before… my young ones started panicking thinking it was a bomb and we said maybe a lorry had crashed on the London Road and not to panic.
“There was no screeching like brakes, just a long rumbling sound like thunder hitting the railway line.”
British Transport Police confirmed nobody had died in the crash.
A Network Rail spokesperson said: “At around 19:00 GMT this evening, the rear carriage of the 17:08 Great Western Railway service from Portsmouth Harbour to Bristol Temple Meads derailed after striking an object on its approach to Salisbury station.
“The derailment knocked out all of the signalling in the area.
“Subsequently, the 17:20 South Western Railway service from London Waterloo to Honiton then collided with the Bristol train.
“There are reports of injuries and the emergency services are on site along with railway first responders.”
The Rail Accident Investigation Branch has also been called to the scene.
British Transport Police said a casualty centre has been set up at St Mark’s Church on St Mark’s Ave, with local people offering support in the form of blankets, food, drinks and first aid.
Transport Secretary Grant Shapps tweeted: “My thoughts go out to those affected by the serious rail incident near Salisbury.”
He said the Rail Accident Investigation Branch and Office of Rail and Road will investigate, adding: “We need to understand how this happened to prevent in the future.”
An Office of Rail and Road spokesperson said: “We’re supporting Network Rail and the train operators, plus RAIB (Rail Accident Investigation Branch) and the British Transport Police with respect to the collision between two trains near Salisbury Tunnel Junction and liaising with emergency services responding to the incident.”
Transport Salaried Staffs Association general secretary Manuel Cortes said the incident was “a very sobering reminder about why safety on our railways is always paramount”.
The BBC is not responsible for the content of external sites.