I was in my local ASDA store on Saturday and saw they had BFBC2 for the PC for £12.50, which isn't as cheap as the Steam sale, but close and they also had (while stocks last) Modern Warfare 2 for the PC for £10.
BF:BC 2 is worth that, MW2 isn't. I got it free (a graphics card promotion or some such) and I still don't think I've got value for money out of it. The online play is truly shocking. Once you've been in a match which has switched hosts 3 times you'll start to really miss dedicated servers.
BFBC2 on Amazon is £10.99 and you can use the dMw affiliate link