Porto es el principal nudo ferroviario del norte de Portugal y una parada clave en el eje ferroviario nacional norte-sur. La ciudad cuenta con dos estaciones centrales de pasajeros con funciones distintas: Porto Campanha gestiona las conexiones de larga distancia y regionales, mientras que Porto Sao Bento atiende las llegadas urbanas y regionales al centro. Comboios de Portugal, normalmente conocido como CP, opera los principales servicios ferroviarios de pasajeros en Porto.
Los trenes desde Porto incluyen servicios Alfa Pendular en el principal corredor de larga distancia de Portugal, trenes Intercidades que enlazan las principales ciudades, servicios Regional e InterRegional por el norte de Portugal, y los trenes de cercanías CP Urbanos do Porto. Porto Campanha es la principal estación para las salidas de larga distancia, mientras que Sao Bento resulta útil para el centro de Porto y los trayectos ferroviarios de corta distancia dentro del área metropolitana.
Las rutas desde Porto se dirigen al sur hacia Lisboa, Coimbra, Aveiro y el Algarve con transbordos, al norte hacia Braga y Viana do Castelo, al este hacia el valle del Douro, y hacia el interior en dirección a Guimaraes y Marco de Canaveses. Los trenes a Porto suelen llegar primero a Porto Campanha antes de continuar a Sao Bento u otras estaciones locales. Reserva trenes desde y hacia Porto en línea en Rail Monsters.