In a region stuffed with wonderful views, PORTHMADOG, at the crook of the Cambrian Coast and the Llŷn, has some of the finest – up the Vale of Ffestiniog and across the estuary of the Glaslyn River to the mountains of Snowdonia. The bustling town itself makes little of its wonderful position, but it’s a good base for exploring. Wales’s heritage railway obsession reaches its apogee here with two fantastic lines – the peerless Ffestiniog Railway and the newly restored Welsh Highland Railway – and if steam trains don’t blow your whistle, you can head for the strange but wonderful Italianate folly of Portmeirion.

Ffestiniog Railway

The Ffestiniog Railway ranks as Wales’s finest narrow-gauge rail line, twisting and looping up 650ft from the wharf at Porthmadog to the slate mines at Blaenau Ffestiniog, thirteen miles away. The gutsy little engines make light of the steep gradients and chug through stunning scenery, from broad estuarine expanses to the deep greens of the Vale of Ffestiniog, only fading to grey on the final approaches to the slate-bound upper terminus at Blaenau Ffestiniog. In the late nineteenth century the rail line was carrying 100,000 tons a year of Blaenau Ffestiniog slate, but after the collapse of the slate roofing industry the line was abandoned (in 1946) and fell into disrepair. Reconstruction of the tracks was complete by 1982.

Leaving Porthmadog, trains cross The Cob and then stop at Minffordd, a mile from Portmeirion.

Welsh Highland Railway

In 2011 the narrow-gauge Welsh Highland Railway once again connected Porthmadog with Caernarfon, 25 miles away. One of the most scenic lines in a land packed with charming railways, it rises from sea level to 650ft along the southern flank of Snowdon and passes a gorgeous river estuary, oak woods and the Aberglaslyn Gorge, where the line hugs the tumbling river.

The full Porthmadog–Caernarfon round trip gives you a full five hours on the train but only an hour in Caernarfon. Alternatively, ride to Beddgelert then walk down the Aberglaslyn Pass to Nantmor (1hr) and catch the train back to Porthmadog from there.

Portmeirion

Best known as “The Village” in the 1960s cult British TV series The Prisoner, the Italianate private village of PORTMEIRION, set on a small rocky peninsula in Tremadog Bay, was the brainchild of eccentric architect Clough Williams-Ellis. He dreamed of building an ideal village using a “gay, light-opera sort of approach”, and the result is certainly theatrical: a stage set with a lucky dip of buildings arranged to distort perspectives and reveal tantalizing glimpses of the seascape behind.

In the 1920s, Williams-Ellis bought the site and turned an existing house into a hotel, the income from this providing funds for his “Home for Fallen Buildings”. Endangered structures in every conceivable style from all over Britain and abroad were brought here and arranged around a Mediterranean piazza: a Neoclassical colonnade from Bristol, Siamese figures, a Jacobean town hall, a campanile and a pantheon. Painted in shades of turquoise, ochre and buff yellows, it is continually surprising, with hidden entrances and cherubs popping out of crevices – eclectic yet somehow all of a piece.

More than three thousand visitors a day come to ogle in summer, when it can be a delight; fewer in winter, when it seems just bizarre.

Book through Rough Guides’ trusted travel partners

Wales features

The latest articles, galleries, quizzes and videos.

6 of the best road trips in the UK

6 of the best road trips in the UK

There is something about a road trip that creates an endless state of heightened excitement. It comes with a heart-in-mouth, funfair-like thrill. And no matter …

21 May 2018 • Mike MacEacheran insert_drive_file Article
Beyond Snowdon: the best alternative hikes in Wales

Beyond Snowdon: the best alternative hikes in Wales

Wales-bound hikers invariably make a beeline for Snowdon, Britain’s highest mountain outside of Scotland. But with annual visitor numbers cresting the 600,000…

25 Apr 2018 • Luke Waterson insert_drive_file Article
8 great alternative UK city breaks

8 great alternative UK city breaks

London, Edinburgh, Cardiff… These are the usual suspects when visitors are thinking about UK city breaks. But there are actually 66 other cities to be explore…

23 Apr 2018 • Greg Dickinson insert_drive_file Article
View more featureschevron_right

Privacy Preference Center

Necessary

Mandatory - can not be deselected. Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID,aelia_cs_selected_currency,cookie_notice_accepted,RS,bp-message,bp-message-type,id,UIDR,w3tc_logged_out,__cfduid
__cfduid

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

__utma,__utmb,__utmc,__utmz,_ga,_gid,__atssc,__atuvc,__atuvs,di,dt,ssc,ssh,sshs,uid,uit,xt
__utma,__utmb,__utmc,__utmz,_ga,_gid
__atssc,__atuvc,__atuvs,di,dt,ssc,ssh,sshs,uid,uit,xtc

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

__gads,PISID, BEAT, CheckConnection TempCookie703, GALX, GAPS, GoogleAccountsLocale_session, HSID, LSID, LSOSID, NID, PREF, RMME, S, SAPISID, SID, SSID,__utmv, _twitter_sess, auth_token, auth_token_session, external_referer, guest_id, k, lang, original_referer, remember_checked, secure_session, twid, twll,c_user, datr, fr, highContrast, locale, lu, reg_ext_ref, reg_fb_gate, reg_fb_ref, s, wd, xs
__gads,PISID, BEAT, CheckConnection TempCookie703, GALX, GAPS, GoogleAccountsLocale_session, HSID, LSID, LSOSID, NID, PREF, RMME, S, SAPISID, SID, SSID
__utmv, _twitter_sess, auth_token, auth_token_session, external_referer, guest_id, k, lang, original_referer, remember_checked, secure_session, twid, twll
c_user, datr, fr, highContrast, locale, lu, reg_ext_ref, reg_fb_gate, reg_fb_ref, s, wd, xs