El puerto de Barcelona cuenta con terminales ferroviarias, de ancho de vía europeo, especializadas según el tipo de tráfico. Para las mercancías a granel, existen las terminales ubicadas en los muelles de Contradic y de Inflamables; para los contenedores, se encuentran las terminales de Morrot y las de los muelles Sud (dentro de la terminal de TCB) y Príncep d’Espanya (dentro de la Tercat). También hay terminales específicas para el tráfico de automóviles, ubicadas en la Dàrsena Sud, en el muelle de Inflamables y en la calle Z.
La Autoritat Portuària de Barcelona prevé la construcción de nuevas terminales intermodales de recepción y expedición de trenes, que se ubicarán en la ZAL Prat (una para la expedición y otra para la carga de contenedores); en el área Nou Llobregat, destinada a la recepción y expedición de trenes; otra en el Dic Sud, para la recepción y expedición de contenedores, y otras dos terminales más de contenedores.
El puerto de Tarragona es uno de los puertos peninsulares con mayor cuota ferroviaria, especialmente por lo que respecta a mercancías a granel. Las principales terminales para la clasificación y el depósito de vagones están ubicadas en los muelles de Costa, Aragó, y adyacentes al muro del río Francolí. El puerto también cuenta con una red ferroviaria interior que ofrece servicio a los muelles de Costa, Llevant, Lleida, Aragó, Reus, Rioja, Castella y Catalunya, en la explanada de hidrocarburos y en la terminal de vehículos. La red ferroviaria portuaria está conectada con las líneas que van de Valencia a Barcelona, y de Tarragona a Zaragoza y Lleida.