I would fly Norwegian Air from Stockholm to Manchester - they have flights on Mondays, Wednesdays & Fridays I think. From Manchester Airport - take a train direct to Crewe where you change for the Cardiff service = hourly. If your journey is imminent, please note that the Rugby World Cup is taking places at the moment & trains are VERY busy on days when matches take place.
Trains from London to Cardiff leave from Paddington station. If landing at Heathrow, you could use the 'Railair' bus link to Reading to catch the train to Cardiff. wwww.nationalrail.co.uk will tell you the train times & fares - for any route in the UK. Booking ahead can get you cheaper fares but ties you to specific trains - which ain't easy if having to come off a flight.
I reckon that going via Manchester is the best option. So - on www.nationalrail.co.uk From MIA > CDF gives you the trains (with change at Crewe) & if you pay on the day it will cost £69.30 one way. If you jump ahead about 10 weeks & choose an off peak train, the fare can be as low as £19. If you wish to pre book this route, try using the Arriva Trains Wales website. If using the London (Paddington route) or Reading, pre book with gwr.com