Thats correct that Shropshire is the only county without a direct train to London - that phrase often crops up, usually when a service is withdrawn! I live in Shrewsbury, and while I think the town ought to be connected to the capital, I have to agree with what others have said in that there just isn't the patronage to keep the services going - they would still be running otherwise.
Wales and West used to do a direct train to London as well, don't forget...but it ran via Hereford, Newport, Severn Tunnel and ended up in Waterloo about 7 hours later!
As for the discussion on costs, a friend was telling me that when the Cambrian Coast Express used to run into Euston, it would be dragged by 2 37's from Aberystwyth to Shrewsbury, then a 47 would take the train forward to Wolverhampton and then an 86/87/90 would propel it for the rest of the journey! Great for haulage fans, but was hardly economic!