I have a hard time defending most micro-transaction models, even of the games I like such as Heroes of the Storm. Once I start comparing how much I can get for $60 in those games versus having just bought a brand new AAA title, the content I get in the F2P game seems like it's horribly overpriced.
Although for the time being, Heroes of the Storm isn't too bad on unlocking heroes. As time goes on it will become like League where it will take ages to unlock all of them because there is so damn many of them.
This is the prime reason why Smite is my favorite MOBA, is because it has probably the fairest business model I've seen in a F2P game ever. You can play the game and unlock all of the gods via in-game currency like in every other game, or you can buy gems (the premium currency) to purchase gods like in other games. The interesting bit is that you can skip all of that and buy the Ultimate God Pack, which is a $30 one-time purchase that gives you access to every god that is currently available, and every god that will be available in the future. I bought the god pack back when the game was in beta, and I own all 65 (I think it's 65) gods in the game, all for $30. The value of the deal only goes up the longer the game is out and the more gods are released. The only other thing you'll have to put down money for are cosmetics like god skins or voice packs.
So at this point in time, If I converted the $30 that went into buying the god pack into a per-god cost, I'll have spent around 46 cents on each god as compared to the $4 or $5 they normally cost individually.
Also, Heroes of the Storm's prices are absurd. $10 for a hero, and $15 for a skin? That's ridiculous. The actual business model is fair (especially since gold is so bountiful and you can buy essentially half the roster with gold alone by the time you hit level 40), but the prices are retarded.