Hearthstone and Heroes of the Storm come to mind. They are free to play games which can be 100% played without paying once (even at a high level, although it takes time). In-game items can be earned or paid for with money. And overall it's quite a fun experience to pay for bonuses (optional gameplay or cosmetic items) in both games.
Blizzard has a very solid F2P model, even though theirs is one of the most expensive of the lot.
There is a lot of enjoyment in earning bonuses over time rather than getting everything at once. Since the developer wants you to keep playing the game, they need a hook. For subscription-based games, that hook tends to be anti-fun (spend time grinding, time-gating content, etc). Store-based content allows for a non-time-based hook and pushes the developer to keep releasing content. So yeah, if done right, it's beneficial for everybody.