If you want to develop on Windows for Mac OS X, iOS or Android: this is not easy, but quite possible. I did some of it.
First, please see my past answer with many useful references:
Programming for ipad/iphone on windows 7[
^].
It explains how to use Mono and optionally MonobjC to develop for Mac OS X and iOS.
As to Android, this is possible, too. This is Xamarin product. Unfortunately, unlike the rest of Mono, it is comes at price of $400 and up (at the moment of writing):
http://xamarin.com/monoforandroid[
^].
Xamarin also provides proprietary Mono implementation MonoTouch for iPhone and iPad:
http://xamarin.com/monotouch[
^].
Nevertheless, development on Windows still comes for free, as you can develop and test the applications on Windows, test them on .NET and then on Mono for Windows which is available free of charge. This is not so easy but quite possible.
Disclaimer:
I have no affiliation with Xamarin or Apple and no interest in promotion of their products. The information is widely available and is provided for the sole purpose of answering the question in full. OP is warned on the high costs of the products and difficulties in development.
—SA