Porthmadog station is on the Cambrian Coast Line which runs from [wiki=b898b305a71281f5417d6c4af41193b4]Machynlleth[/wiki] to [wiki=77b88c2d8e277fb55c7a6e0fa7b30bd5]Pwllheli[/wiki]. Travel to Machynlleth is via [wiki=b1d23196013adc5199965b28473d8390]Aberystwyth[/wiki] or [wiki=f7b096dcfc2772d05e33bbea878d9b66]Shrewsbury[/wiki].
The town is also served by the narrow gauge Ffestiniog Railway from Blaneau Ffestiniog, Welsh Highland Railway from Caernarfon and the Welsh Highland Heritage Railway.