It's one of those things where people look at just the flight time and forget about the travel time to the airport, getting there an hour or two early to get through security etc.. We did a choir tour to Germany a few months back and the instinct was that the coach would take too long so we flew but the reality was that by time we travelled to Heathrow, got there in plenty of time for check-in etc. which left us hanging around for ages, getting through passport control / baggage reclaim at the other end, getting to the coach and travelling to our destination there actully wasn't much in it. Not sure how the costs compared, the main downside is that on the coach you're stuck in your seat for longer whereas at least the airport offered a bit of a break and chance to strech our legs.
London to Edinburgh by train is fairly easy, but the conditions on the train and not in first class can be utterly awful.
Also, I have experienced quite regular long delays on that line on the last part of it. For some reason trains keep hitting cows when I go.
The flights are also about as reliable as a Jaguar, but unless you are delayed actually on the tarmac, being delayed at an airport is usually better, because at least you can stand up, walk about, use a toilet that functions and quite often find a place to lie down.
From anywhere not in London and not somewhere along the route, the additional time to battle into London tips the balance back to flying. From here I could drive up in about the same time as the train.