Xamarin has released Xamarin Mac which adds Mac support to the existing iOS and Android compilers from the company:
- MonoTouch: apps for iPhone and iPad using the MonoDevelop IDE on the Mac
- Mono for Android: apps for Android using either Visual Studio or MonoDevelop
- Xamarin.Mac: apps for Mac OS X using MonoDevelop on the Mac
The major platforms missing from the above are Windows and Linux (unless you count Android), even though Mono began as a Linux implementation of Microsoft’s .NET platform.
Xamarin says that a Windows version is not necessary since you can use Microsoft’s tools to code in C# for Windows desktop and Windows phone.
You can also get Mono for Windows, Mac and Linux from the old Mono project site.
Why would you bother with paid-for Xamarin.Mac when you can get Mono for Mac as a free download? There is even a Mac packager which lets you create a standalone package for your Mono app. A good question, but I guess the answer is the benefit of Xamarin-specific libraries and support from the company. Xamarin has also done the work to ensure that you can distribute your app via the Mac App Store.
Xamarin.Mac costs $399 for personal use, or $999 for an enterprise license which allows internal as well as app store distribution. A one year, one seat license with priority support costs $2,499.
Xamarin knows how to charge then, and in the end that may be a key reason why the project is working, whereas Mono struggled as an open source project that never had the resources it deserved.
The Mono Project site now says that it is “sponsored by Xamarin” so open source developers are getting some benefit from the commercial offshoot.
Xamarin is important for the C# language, since it represents a viable implementation which is independent of Microsoft.