We visited Caernarfon one day during a long weekend in North Wales. We drove up from London, and it took us around 5 hours.
We decided to drive, as having a car is the easiest way to explore Wales. Although there is a train network and various bus routes, having a car made it quick and easy for us to get to those off the beaten track places without any problem. For the most part, we found the roads in Wales to be in excellent condition and well signposted.
If you are driving, steer clear of the parking area just next to the castle, by the river. It costs £3.00 to park here, which is ok if you are staying for the day, but a bit steep for only an hour or two. There seemed to be plenty of other cheaper/free parking options close by.
Another way to get to Caernarfon is by bus, with the main buses running from Bangor and Llandudno.
From the tourist office I got the timetable for the local buses leaving Caernarfon, which was good to have as I was making daytrips to other places in northern Wales. Buses in Caernarfon all leave from Penllyn in the town centre.
Buses to Llanberies leave Caernarfon about every half an hour during Monday - Saturday, and less frequent on Sundays. Some of these buses go to Victoria Terrace in the end of the village, from where the Llanberies trail up to Snowdon begins. A return ticket was £3.20 (February 2012) and the journey takes 20 minutes. Going back to Caernarfon I took the bus from the bus stop in the village. It is bus number 88/89 that runs between Caernarfon and Llanberis.
To Snowdon Ranger:
Bus S4 from Caernarfon passes Snowdon Ranger, where the Snowdon Ranger trail up to Snowdon begins. The buses are not very frequent. I took the bus at 8:45 in the morning and the next bus was not leaving until two hours later, at 10:45. A return ticket was £3.90 (March 2012) and the journey takes 20 minutes. The bus stops just by the hostel and car park.
Bus number 5 that runs between Caernarfon and Lludadno passes both Bangor and Conwy. I went to Conwy and it is a journey that takes 1h and 10 minutes. A returnticket was £5 (March 2012). Arriving to Conwy the bus stop is close to the castle and when returning to Caernarfon the bus stop is near the railway station. The buses run every 15 minutes.
There is one National Express coach leaving Caernarfon for Chester (and Manchester) daily. It leaves 8:35 in the morning which suited me well as that would give me the afternoon to explore Chester. I bought the ticket on Internet one week ahead and it was £18.40 (March 2012).
As the local buses in Caernarfon, the National Express coach leaves from Penllyn in the town centre. The journey to Chester took 2h and 50 minutes. In Chester the coach stops at the bus station within the walls in central Chester.
National Express have a coach from Manchester to Caernarfon, but it doesn't leave until 14:50 in the afternoon, which was too late for me.
Another option is to take a train to Bangor, and there change to a bus. When I, one week in advance, searched for morning trains from any station in Manchester to Bangor the option that came up was from Picadilly Station and full price tickets for £34.70 (February 2012). I didn't book a ticket as the price would be the same if I bought it at the station just before leaving. When I arrived in Manchester I realised that the train might stop at Oxford Road Station, which was closer to the hostel where I was staying. When I now made a new search for tickets, only from Oxford Road Station there were tickets available for £14 with the 7:53 train, but I didn't book a ticket then as my time on Internet was running out, and of course those cheep tickets soon disappeared. It can be a good idea to check tickets from different stations as the cheap tickets from the main stations are sold first.
I took the 7:53 train from Manchester Oxford Road Station to Chester. I paid £34.70 for the ticket (to Bangor) at the station. To Chester the train took about an hour and there I had to wait half an hour for the next train to Bangor. To Bangor it took another hour.
The bus to Caernarfon passes by the train station, but I didn't know that, so to take the bus from Bangor to Caernarfon I walked down the street to the bus station in Bangor. The bus to Caernarfon took less than half an hour and the ticket was £2.70. In Caernarfon the bus stopped at Penllyn, where all buses stop, and from there it was not far to walk to Totter's where I was going to stay.
Unlike many of the major towns in Wales, Caernarfon missed out on being connected to the train line. The rails simply routed through Bangor and on to Holyhead, bypassing Caernarfon altogether. The only public transport into the town is therefore the bus. But the local bus services are quite good, linking the town with Llandudno, Portmadog, Bangor, Barmouth, and Blaenau Ffestiniog.