How can my friend in the U.K. cheaply transfer money to me in Israel?

He can send you a check. This will move the burden of GBP->USD conversion to him (unless the GBP amount is preset, then you'll be the one to pay for conversion either way). You can then deposit the USD check in any Israeli bank (they'll charge commission for the deposit and the USD->ILS conversion).

Another, and from my experience significantly cheaper, option would be to wire transfer directly to your account. If you have a USD account and he'll transfer USD out - it will be almost at no cost to you, if you don't have a USD account check with your bank how to open it, or pay for USD->ILS conversion.

Probably the easiest to do is to do an international transfer via online banking. You will need to give your IBAN and BIC/SWIFT code of your bank to your friend, he should then be able to transfer the money from his bank. At least, I think they use IBAN in Israel as well. The money will be converted to the currency of your account. There are some fees, but they are not too big I think, and depending on the choice of transfer they can be paid by sender, shared, or by receiver. Contact your bank for precise details.

Edit: if you really need to be paid in USD this may not be the best option though.

The supposed cheapest way to do this is via a website like:

They claim to have the best exchange rates compared to banks but I have never used them. If you do use them could you let us know in the comments as to how good they are?