The mono port to iOS is monotouch. Or is it. The code is compiled to native Objective-C, not the Intermediate Language code that compiles at runtime. They call it Ahead of Time compiling.
Because C# is now supported on iOS I can share code from my Windows Phone 7 app when I port it. When using the MVC pattern this could add up to about 66% code sharing.
Be sure to read the documentation. I quickly ran into the problem of incompatible versions of MonoTouch, MonoDevelop and XCode. But a quick e-mail to Xamarin solved this for me. Also deploy the app to an actual device. iOS 3.1.2 on my old iPhone crashed the app before showing the initial view. Turns out iOS 3 needs a window.AddSubView(controller.view) where iOS 4 and up can handle window.RootViewController = controller which is used in the getting started samples.
Be sure to read my post on mono.