There are two main ways of doing this:
1) Buy an upgrade via Battle.Net, the official Blizzard app. This will cost you £32.
2) Buy a physical copy, wait for it to arrive, type in a code, and then throw it in the bin. This will cost you £29. And take longer. And be physically wasteful.
The third method, which I used, is to use a site like GameMafia Pro, which will charge me £20, and then email me a _photo_ of a cd-key taken from a box, and then throw that box away for me.
Which, admittedly, is both cheaper and easier than buying the box myself and throwing the box away myself. But it is absolutely ludicrous that the cheapest option involves boxes at all. Presumably, Blizzard sells boxes for £17-or-so, so that shops can have a markup and still sell it for £30. And presumably they'd rather not sell game keys in bulk without the attached DVD, because they want you to buy upgrades digitally direct from them, and make the extra £12. (And I also assume that they can't undercut their own RRP, because that would piss off Amazon and the rest of their supply chain.)
But the overall resulting situation is just ridiculous, and wasteful.
Original post on Dreamwidth - there are comments there.