I work actively in Xamarin with both iOS and OSX. Documentation can be somewhat lacking, but it's usually not too hard to figure out. Xamarin.Forms is pretty well documented, and if ever you need to dive into platform specific code, the translation from Obj-C/Java to C# is about as straightforward as you can get. The classes have the same names, the methods take the same arguments, and if it deviates, the autocomplete provides enough info to figure out the difference. The only exception I've found is for Obj-C constants. It's not always clear which class they're buried in.
Overall, I've really enjoyed Xamarin. Development is quick and easy, you can use a lot of NuGet packages, and if you think C# first, platform specific second, it's easy to port code between platforms.
Overall, I've really enjoyed Xamarin. Development is quick and easy, you can use a lot of NuGet packages, and if you think C# first, platform specific second, it's easy to port code between platforms.