I travel by bus frequently, and i've never been able to find a £1 megabus fare - they seem only to offer these on certain routes, at certain times, to VERY early bookers. the National Express funfares are certainly more available.
Also, and this might just be for the routes I take, the mega-buses don't seem to go to central bus stations - their stops and pick up points seem to be a bit out of the way. For the most part their fares are comparable to National Express buses, but if you get a coachcard, and book a week or so in advance, you can actually save a fair bit of money there too. Not that either company is 'better', this is just the way I've found it.