The cheapest way is usually through Amazon coins, which (if you don't already know) can be used with the version of Hearthstone you download through the Amazon Android app. $50 worth of coins is often $40 (currently $41) and bigger purchases come at a bigger discount.
If you don't have an Android phone, you can use an emulator like Genymotion, which is not particularly difficult to set up.
One caveat: If you go that route, I would hold off on a preorder until closer to launch (perhaps once Blizzard sets out a solid launch date), because Amazon often runs specials around set launches where you get a certain percentage of your spent coins back, so you can buy even more packs.