Extend, Embrace, Extinguish Also Works Against Microsoft
IMO, the major strengths of Microsoft are:
A) A strong sales&marketing organization
B) Focus on Ergonomics (aka. "User Experience")
C) Good Documentation of APIs on MSDN. Searchable through Google.
The Free Software community can embrace & extend all of these strong MS aspects and then go for the killing. For Example:
a) Tell people around you and in internet forums like this about excellent free software solutions to their business problems. "You can solve you document management needs with either Alfresco or TeX/SVN". "IPSec comes for free with Ubuntu". "protect your trade secrets with GPG" . "Ubuntu has a unified updating/patching mechanism and a unified application store"
I do think it would make more sense to promote alternatives to MS solutions than to blast them all the time.
b) The most important reason for Ubuntu's success has been in Ergonomics. Free Software has a huge potential here in simply making existing functionality easier to access. Considerable time and effort must be spent to improve usability.
c) Documentation must clearly be improved for many free software technologies, also with a focus on usability. A badly documented project is not in a good shape. Many novice users of free APIs suffer from a lack of well-documented examples.
To conclude, if the free software community learns from the strengths of Microsoft, it can extend and embrace those to become even stronger.
Reviewing success, in the server field, Linux has already won a decisive victory, not just a battle. Firefox and Webkit have forced MS to drop their proprietary, lock-in stuff like Silverlight. MySQL and PostgreSQL are assuring the sanity of MS and Oracle. OpenOffice has forced MS to publish a huge convolute of their own, competing standard (even if that is not fully useable). Free crypto has forced MS to clean up their crypto mess.