Rome2Rio

How to get fromCardiff to Welshpoolby train, bus or car

Find Transport to Welshpool

See all options

There are 4 ways to get from Cardiff to Welshpool by train, bus, or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Train

    best
    1. Take the train from Cardiff Central to Shrewsburytrain train Cardiff Central - Manchester Piccadilly / ...
    3h 16m
    £48–82
  2. Drive 104.7 mi

    cheapest
    1. Drive from Cardiff to Welshpoolcar car 104.7 mi
    2h 19m
    £26–38
  3. Bus

    1. Take the bus from Greyfriars Road Stop GJ to Merthyr Bus Station Stand 1bus bus X4
    2. Take the bus from Merthyr Bus Station Stand 2 to Newtown Bus Station Stand 2bus bus T4
    6h
  4. Train, bus

    1. Take the train from Cardiff Central to Merthyr Tydfiltrain train Aberdare - Merthyr Tydfil / ...
    2. Take the bus from Merthyr Bus Station Stand 2 to Newtown Bus Station Stand 2bus bus T4
    6h 23m

Cardiff to Welshpool by train

Calendar89Weekly Trains
Duration3h 16mAverage Duration
Ticket£48Cheapest Price
See schedules

Questions & Answers

What companies run services between Cardiff, Wales and Welshpool, Wales?

Transport for Wales operates a train from Cardiff Central to Shrewsbury hourly. Tickets cost £40–70 and the journey takes 1h 58m. Alternatively, you can take a bus from Greyfriars Road Stop GJ to Welshpool Bus Station Stand B via Merthyr Bus Station Stand 2 and Newtown Bus Station Stand 1 in around 6h.

Train operators
Bus operators

Want to know more about travelling around United Kingdom

Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.

Related travel guides

More Questions & Answers