Actually, BT offer free off-peak national calls if you get their together package (well, they're only free for the first 60 mins, after which they are chargeable, - so you just hang up and redial). BT together also has the other advantage that there is no minimum contract period (I think some of their other options require a min of 6 moths or 1 year).
The other advantage I found to BT is that you get reliably free internet dial-up - some of the other phone companies will charge for the supposed free numbers (or not connect them) used by 'Anytime' providers, such as BTopenworld, freeserve and others.
Also, BT offer ADSL in most of sheffield - NTL and telewest (blueyonder) don't.
If you want to make a lot of international calls, then there are lots of 'dial-through' numbers - you dial a non-geographic 'local rate' number, which will then connect you to the number of your choice (e.g. you can call the US for 1p/min). See
http://website.lineone.net/~iceburn/telecomuk.html for details.
As for mobiles - orange and vodafone have the best national coverage. O2 is in 3rd place, and T-mobile in comparison is pretty poor. In town, all offer close to 100% coverage, but conversly if you go out to the peak district national park just 5 miles out to the West, then no network has any coverage in the most scenic areas.