The incident occurred at 7.15 a.m. when the train from Sant Vicenc de Calders, in the Catalan province of Tarragona, was arriving at the Francia station in Barcelona city centtre, the Directorate General of Civil Protection in Catalonia said.
While pulling into one of the station platforms, the train was apparently unable to stop and rammed into the buffer zone at the end of the track, reports Efe news.
According to witnesses, the accident did not interrupt other train services from the station but platforms adjacent to the affected train have been closed.
The Directorate General of Civil Protection in Catalonia said 18 of the injured required hospital treatment. Five people received serious injuries, including the train driver.