Today Xamarin does all this pretty well cross platform, desktop and mobile for UWP/Mac and iOS/Android.