I haven't used the SharePoint stuff at all so I am certainly not well versed there. In fact, the last time I used any Micorosft based servers, I had such a bad time with them that I have been on Linux ever since. Not to say I wouldn't try them again if I was assured that they were stable.
As far as WordPress and Joomla go, I have used them both. A lot of times, though, they have limitations and that's why I prefer WebAssist tools to help me build exactly what the clients wants rather than trying to apply work-arounds to get WordPress or Joomla to work. I think both of them, though, are great if you are just managing straight forward content or blogs. But the problem I always run into with clients is that they have specifics that they need the site to cover and won't work with just a typical content management system.
I do, however, really like some of the plugins in WordPress. There seems to be more and more stuff available all the time.
One issue I have seen with Joomla is that it can be crashed with a large number of users in the database.
I think the platform that I really find intriguing is Drupal. It looks like with some good customization, that Drupal could really be customized to the extreme and made to fit with some more specific needs.