This :
http://www.citibank.co.uk/personal/banking/international/eurocurrent.htm?merchant=citi
It's the US Dollar Current Account. Got one recently, you transfer money into it online and the exchange rate I believe is a standard bank exchange rate with no extra charges (I think), e.g. on 3rd November I got a rate of 1.6021 when I transferred some money in.
You get a VISA debit card, chequebook etc if you want but I wont use that, and there are no fees on withdrawal at cash machines or on transactions. It's good for me as I travel to the US more often now and I get a US$ cheque every now and then.
I looked around a lot and this seems the best way to be honest.
Caveat is, use it anywhere else than where US$ is accepted currency and you'll get charged as your own UK debit card abroad. Also free withdrawals are only from Citi cash machines, but they're everywhere.
Handy for Europe too because you can just call up and say 'can I switch to Euros' and BAM.
Until recently they used to charge $20 a month if you didnt have $2000 in it, but they've stopped that, surprised everyone's not jumping on it.