>>17
The dialects of Basic found in the Commodore VIC-20, 64, 16, Plus4, and 128, as well as the Tandy Radio Shack TRS-80 Model 100, were written by Microsoft. The 100's OS was so exclusively written by MS that the main screen bears the letters "(C) 1983 Microsoft".
On a side note, Microsoft's very first software product was a Basic language interpreter for the then-new MITS Altair 8800 desktop computer. All one needed to run it was an Altair with 4 KB of RAM. Problem was, when the interpreter was released, no Altair at the time had more than 256 bytes of RAM, so Microsoft's first software product already needed 16 times what the hardware could give it. Microsoft's very first hardware product was a S-100 card, a 4 KB RAM card for the Altair, but it never sold well because not a one ever sold worked. Since then, the quality of Microsoft's products have improved only slightly.
Also, in the IBM lineage, Microsoft included a version of GW-BASIC or BASICA (often both) with every version of MS-DOS and PC-DOS until version 5.0, when it was replaced with QBASIC, a handicapped interpreter-only version of Microsoft's QuickBASIC compiler/IDE.
You're right about MS competing with others. But I think what happened is that, after the win32 API, MS released secret optimized APIs that only its own compilers can use but that competing compilers were locked out of, thus ensuring that only those programs compiled by MS's compilers can use new features and use them well.
Oh, and in the CGI war, Perl vs. PHP, let's not forget Python.