bt are expensive, you can get the same or better for less.
if you like playing games online then i woudlnt go for the bt homehub as they dont make it easy for opening ports etc.
virgin will be faster if you can get cable but if you dont have cable then i wouldnt go for virgin as adsl isnt really their market
other than those little gems of advice, usefull or useless as they may be, all i can say is use moneysupermarket or the other one mentioned, to find the best deal.