The regional government of northeast Catalonia said five of the 22 were in serious condition.
The collision occurred late Sunday near the town of Vila-seca, south of Barcelona. There were 75 passengers on the train.
Spain’s Adif railway infrastructure company said the freight train engine had a brake problem. The collision continues to be under investigation.
Traffic on the line remained interrupted Monday.