Xamarin, specifically Xamarin.Forms is a way to quickly build native apps for iOS, Android and Windows completely in C#.
Xamarin.Forms is a cross-platform, natively-backed User Interface (UI) toolkit abstraction that allows developers to create user interfaces that can be shared across Android, iOS, and Windows phone. As the user interfaces uses the native controls of the target platforms, they have the appearance and importantly, the responsiveness of natively built apps.
Xamarin.Forms is a fantastic platform for those .NET programmers coming from Silverlight or WPF Background. Utilising XAML markup for UI configuration, and then pulling the standard Apple, android and Windows phone themes allows applications to be made quickly, and still fit to the standard operating system themes and styles.
It should be noted however, that Xamarin.Forms will only get you so far (simple apps, matching OS style). For more advanced layouts, you will need to use Xamarin Native.
Xamarin.Native is a C# wrapper around the native iOS and Android development stacks, allowing you to utilise C# code to create and deliver android and iOS applications from your visual studio environment.
Using the built in visual studio plugin and linking your windows macted Mac development environment, you you can build an iOS app directly from your visual studio instance, which makes turn around time of builds much faster.