I do believe that Microsoft charging for a Gold subscription is fair and well within their rights. Microsoft provides a service to Xbox users, not just in online play, but for the entire infrastructure of friends lists, marketplace, live chatting, all that jazz. Certainly there are free alternatives, but as Microsoft is the one providing the service, they are entitled to set their own price. It's up to the consumer to decide on an individual basis whether Microsoft's service is worth the money, compared to competitors' services.
With that said, with Xbox Live being a paid service, I believe it should be held to a higher standard of quality than a comparable free alternative. And on a personal level I don't feel that I'm getting a good value compared to something like Steam or PSN (recent downtime notwithstanding).