While airfare is relatively cheap, you have to buy well in advance to get the best fare. A couple of years ago when I repeatedly checked the price for a particular flight, gradually increasing the lead time on each search, the fare got progressively cheaper up to 30 days -- at which point I stopped checking. (I'd run the same test again to find the maximum practical lead time, but I'm writing this in October wit the holidays around the corner, and holiday fares are unusual so I'll have to wait a couple of months before I can try this test again.) Anyway, the point is, while airfare can be cheap, you have to buy well in advance to get the best fare. The penalty for buying at the last minute on a train or bus is generally much lighter by comparison.