| Station | 
Place | 
Image | 
Opened | 
Closed | 
Distance from Porthmadog | 
Notes | 
| Porthmadog Harbour | 
Porthmadog | 
  | 
1865 | 
Open | 
0  | 
Junction with the original line from across the Britannia bridge to Welsh Slate Co. wharf. Junction with the Welsh Highland Railway 1923-1936 and from 2011. | 
| Pen Cob Halt | 
Boston Lodge | 
  | 
1956 | 
1967 | 
70 chains (1.41 km) | 
Opened 19 May 1956 used regularly only until 5 November 1957. | 
| Boston Lodge | 
Boston Lodge  | 
  | 
1928  | 
Open | 
1 mile 5 chains (1.71 km) | 
Temporary terminus 23 July 1955 to end of 1955 season. | 
| Minffordd | 
Minffordd (near Portmeirion) | 
  | 
1872 | 
Open | 
2 miles 5 chains (3.32 km) | 
Joint station with the Cambrian Line. Temporary FR terminus 19 May 1956 to end of 1956 season. | 
| Cae Ednyfed  | 
Minffordd (near Portmeirion) | 
 | 
1836 | 
1863 | 
2 miles 7 chains (3.36 km)? | 
There were stables here between 1836 and 1863 and this was a horse stage station.  | 
| Pen y Bryn Halt  | 
Penrhyndeudraeth | 
 | 
1957 | 
1957 | 
2 miles 63 chains (4.49 km) | 
Opened 20 April 1957 used regularly only until 5 November 1957. | 
| Penrhyn | 
Penrhyndeudraeth | 
  | 
1865 | 
Open | 
3 miles 8 chains (4.99 km) | 
Temporary terminus 20 April 1957 to 5 November 1957. | 
| Rhiw Goch (Passing Loop)  | 
Penrhyndeudraeth | 
  | 
1836 | 
Open | 
4 miles 16 chains (6.76 km) | 
Passing loop for horse-drawn trains until 1863. Re-instated in 1975.  | 
| Plas (private) Station  | 
Tan-y-Bwlch | 
 | 
1865 | 
c. 1920 | 
6 miles 2 chains (9.70 km) | 
Used only by the Oakeley household at Plas Tan y Bwlch. | 
| Plas Halt | 
Tan-y-Bwlch | 
  | 
1963 | 
Open | 
6 miles 19 chains (10.04 km) | 
Opened 31 May 1963. | 
| Hafod y Llyn | 
Tan-y-Bwlch | 
 | 
1836 | 
1873 | 
Approx. 7 miles 5 chains (11.37 km) | 
Used for passing slate trains until 1865 and as passenger station 1865 to 1873. | 
| Tan-y-Bwlch | 
Tan-y-Bwlch | 
  | 
1873 | 
Open | 
7 miles 35 chains (11.97 km) | 
Temporary terminus 5 April 1958 to 5 April 1968. | 
| Coed y Bleiddiau | 
Coed y Bleiddiau | 
 | 
1865? | 
Open | 
Approx. 8 miles 40 chains (13.68 km) | 
Private platform serving Coed y Bleiddiau cottage which is only accessible by rail or footpath. | 
| Campbell's Platform | 
Y Dduallt  | 
  | 
1968 | 
Open | 
9 miles 7 chains (14.62 km) | 
Private halt serving Plas y Dduallt, a 15th-century Welsh Manor House. | 
| Dduallt | 
Moel Dduallt | 
  | 
1880?  | 
Open | 
9 miles 44 chains (15.37 km) | 
Temporary terminus 6 April 1968 to 24 June 1977. | 
| Tunnel South loop  | 
Moelwyn Mawr | 
 | 
1842  | 
c1865 | 
Approx. 10 miles (16.09 km) (on former track alignment) | 
Used for passing horse drawn trains and early steam trains. | 
| Tunnel Halt | 
Moelwyn Mawr | 
 | 
1920s?  | 
1939 | 
10 miles 60 chains (17.30 km) (on former track alignment) | 
At the northern end of the old Moelwyn tunnel.  | 
| Gelliwiog | 
Moel Dduallt | 
 | 
1975  | 
1977 | 
10 miles 32 chains (16.74 km) | 
Temporary terminus of push-pull shuttle trains from Dduallt 26 May 1975 to 24 June 1977. | 
| Llyn Ystradau | 
Tanygrisiau reservoir | 
 | 
1977  | 
1978 | 
Approx. 11 miles 30 chains (18.31 km) | 
Temporary terminus 25 June 1977 to 23 June 1978. | 
| Tanygrisiau | 
Tanygrisiau | 
  | 
1866 | 
Open | 
12 miles 10 chains (19.51 km) | 
Temporary terminus 24 June 1978 to 24 May 1982. Now used as a passing place. | 
| Dinas | 
Blaenau Ffestiniog | 
 | 
1865 | 
1870 | 
13 miles 30 chains (21.52 km) (on branch from current line) | 
The original northern terminus, opened 6 January 1865. From the opening of Duffws in 1866 until the closure of Dinas in 1870, alternate trains ran along the Dinas and Duffws branches. | 
| Stesion Fein | 
Blaenau Ffestiniog | 
 | 
1881 | 
1939 | 
13 miles 25 chains (21.42 km) | 
‘Stesion Fein’ (narrow station) - transit station for LNWR/LMS. | 
| Blaenau Ffestiniog (LNWR) | 
Blaenau Ffestiniog | 
 | 
1883 | 
1939 | 
13 miles 50 chains (21.93 km) (on a different alignment) | 
Interchange station with LNWR (Conwy Valley Line). Terminus from 31 May 1931 until 1939. | 
| Blaenau Ffestiniog | 
Blaenau Ffestiniog | 
  | 
1982 | 
Open | 
13 miles 50 chains (21.93 km) | 
Current terminus; joint station with British Rail (Conwy Valley Line) opened 25 May 1982; roughly on site of Blaenau Ffestiniog (GWR) station. | 
| Duffws  | 
Blaenau Ffestiniog | 
  | 
1866 | 
1931 | 
13 miles 60 chains (22.13 km) (on a different alignment) | 
Only alternate trains ran to Duffws until 1870 when Dinas was closed to passengers. Terminus until 1931. |