No dedicated servers (get dedicated servers for free on PC)
Wrong. Plenty of Xbox 360 games have dedicated servers for online play. The battlefield games for example.
Few games offer a server choice or jump into an ongoing game (can do both on most PC games)
That's the same on the PS3 too and it's down to the developers of the game whether they give people that option or not, not the creator of the console.
Microsoft make enough money without charging for online gaming.
How do you know it doesn't cost them a lot to sustain the service? Sony lose a lot of money running PSN. Why do you think they introduced Playstation Plus? That's right, to offset some of the costs.