Guimarães è un capolinea ferroviario del Portogallo settentrionale sulla Linha de Guimarães, situato a est della principale rete ferroviaria di Porto. La città ha una sola stazione ferroviaria passeggeri principale, Guimarães, servita da Comboios de Portugal tramite CP Urbanos do Porto e da alcuni servizi regionali. Il suo ruolo ferroviario è regionale piuttosto che ad alta velocità, e per la maggior parte dei viaggi più lunghi si usa Porto Campanhã come principale punto di interscambio.
I treni da Guimarães sono soprattutto servizi suburbani-regionali che collegano la città con l’area di Porto tramite Vizela, Lousado, Trofa ed Ermesinde. La stazione di Guimarães gestisce le partenze verso Porto São Bento e Porto Campanhã, dove i passeggeri possono cambiare per Alfa Pendular, Intercidades, InterRegional e altri servizi CP in tutto il Portogallo.
Le tratte ferroviarie da Guimarães corrono verso ovest in direzione di Porto e dell’asse ferroviario atlantico, con collegamenti successivi verso sud per Lisbona, Coimbra, Aveiro e Faro, e verso nord per Braga, Viana do Castelo e Valença tramite cambi nell’area di Porto. I biglietti del treno per Guimarães si acquistano di solito come biglietti punto-punto per i servizi CP. Prenota online i treni da e per Guimarães su Rail Monsters.