Windows Phone 7 (unlike Windows Mobile) is a fairly closed system with support for one development environment. That is, you are stuck in Visual Studio and therefore in Windows.
Update: Windows Mobile 6.x is not much better for MacOS developers. For .NET CF, you use Visuaal Studio 2005 or 2008. To develop your own code, you can use Visual Studio 2005 (if memory is used) or, before that, there were eMbedded Visual Studio 4 (and built-in visual tools 3 earlier), both are similar to Visual Studio 6 (and probably built using the same code base).
Alternatives include FreePascal (Pascal, compiling native code) and NSBasic (interpreted BASIC if memory is used).
But all these tools were only for Windows.
source
share