Yes, steam is good for sales, it's especially nice from a consumers standpoint around the Christmas sale or the weekly/monthly sales where games are more than 75% discounted. Thats nice.
The problem as I see it is that, while steam handles it's market well, it is a market that just doesn't make sense. Why, for example, are games even remotely similar in price on steam as in retail, when there's zero (or nearly so) cost required in distribution? More relevantly, why aren't games free on steam. Yes, the devs need paid, I'll get to that later. Simple game distribution, taken that it has already been developed and completed, costs nothing digitally. So steam is selling nothing for something. That doesn't make sense, and it isn't going to work in the long term. The nasty side effect of this is piracy, and that has its own issues.
As mentioned, it costs nothing to distribute a given game on steam (next to nothing, more accurately, valve has employees working on steam and it has nasty utility bills and expensive servers. But at-cost, this would probably amount to around a dollar or less a sale.) Besides distributing games, however, developers need to be funded. This is the question digital distribution really raises. Not piracy or DRM or retail vs the cloud, these are symptoms of the core issue. "How do we fund developers without using a broken business model? I don't claim to know the answer, but selling something for nothing isn't sustainable, no matter what companies will try to tell you. We need to find a way to fund development while still taking advantage of the massively lower distribution costs in the cloud, and it needs done before digital distribution gets any more prevalent. No one should settle for paying for nothing. Even at a discount.
(Piracy isn't the answer, I don't do it myself and don't condone it. It's outside the system. The system needs fixed, not circumvented.)