First, let's see if we can get some data to bear on the problem, rather than relying on my speculations and the media's love for heart-wrenching anecdotes. We can always find, for any system, some stories that make us want to cry, like the uninsured person who goes bankrupt because of a huge hospital bill based on full prices. I don't want to completely dismiss the exceptional cases, but I think when we are designing a social/economic policy we should focus on the total picture.
So I had speculated that not too many people pay full price at hospitals, and I claimed that many hospitals treat the destitute for free. In fact, most hospitals have formal sliding scales of prices, giving LOWER prices to lower income people. I found a good blog posting by Uwe Reinhardt at Princeton on this subject, and he referenced a paper, Melnick and Fonkych, "Hospital Pricing and the Uninsured: Do the Uninsured Pay Higher Prices?" in Health Affairs, Feb. 5 2008. The Reinhardt piece is very good; he actually argues for a law that would restrict pricing to the uninsured at more than 115% of Medicare rates -- although he also admits that for most hospitals this would be nonbinding, as they already do so.
But on to the main article and their findings. They looked at California hospitals in 2005-2007. Below is the chart of their main findings:

So what does this show? Well, the four solid lines show the percent of full price paid by four groups of patients: The commercially insured; the uninsured; Medicare; and MediCal (low income California Medicaid system). You can see a few things. First, who pays the most? The insured. Of course. Who pays the least? MediCal, followed closely by Medicare. Just for the record, Medicare patients in 2005 paid on average about 27% of full price!!! Even the insured, who pay the most, only pay about 38% of full price.
Point number one: my claim that not many people pay full price is correct. Given how low all of these percentages are, there is no statistical way that many people can be paying full price. Some in the sample will be, no doubt, but to get an average of 27% I am sure that the vast majority are paying closer to 27% than to 100%.
Point number two: Who pays on average the most? The insured population. Again, of course. If anything, the insured patients should be screaming about the lower prices being given to the Medicare, Medicaid, and uninsured populations. (But be careful here: it is probably profitable for the hospitals to charge lower prices to those groups -- that is what price discrimination is all about. Prices to the insured would be even higher if the hospitals had to cover all their costs just from the insured population.)
Point number three: Who pays the least? Those insured through government programs, that is, Medicare and Medicaid. So those of you out there who want "one price to all" better realize that the biggest effect of that will be to raise Medicare costs substantially. Essentially what we have here is a hidden tax: the government uses their negotiating clout with doctors and hospitals to get lower rates, which the rest of us then pay for. If you mandate one price, then Medicare will have to raise funds somehow else -- an increase in the income tax, most likely.
Point number four: This pricing is pretty crazy, with list prices being so high. Why not just cut them down across the board? I could go into that, but it is not crucial right here and now.
Beyond this paper, another main point of mine about price differences for health care is that they serve a very important purpose. If the government mandates one price for all, how is that one price ever going to be determined in anything that would approach a competitive fashion? It is the ability for one buyer to negotiate and get a better rate for themselves that benefits all of us by helping to set prices at a reasonable level and keep the escalation of health care costs to a lower level.
Also, people have this idea that pricing is kind of a zero sum game. If one group gets a lower price, someone else has to get a higher price. That logic is tempting but not correct. Hospitals have huge fixed costs they need to cover, from all groups. If you don't let the commercial insurance group get a lower price, you won't get their business. Then all of the fixed costs need to be covered by the remaining groups -- the self insured, for example. The price they will have to pay to cover the hospital's costs is likely to be much, much higher. The zero sum logic applies if we always have all the customers and we are just trying to spread costs around, but this is not the real situation we face.