Earlier quoted context omitted.
We can forget about UWP support, it isn't going to happen in the near future, who knows if it ever will. "The F# team is currently focused on .NET Core tooling in Visual Studio and further support for .NET Core as it evolves. There is no ETA for .NET Native/UWP support at this time." -- Phillip Carter [MSFT] https://blogs.msdn.microsoft.com/dotnet/2017/08/14/f-and-net... Better focus on C# and C++ and call it a day.
I really can't stand C#. F# is what drove me to .NET in the first place. And I don't like going back to C++, is there any GUI/XAML tooling for it? If not, I'd rather use something like Rust.
MFC is mostly on maintenance and new application should use XAML + C++/CX.
C++/CX makes use of the C++/CLI extensions but it targets AOT compilation to native code instead.
The alternatives are C++ with WRL (Windows Runtime Library), basically ATL replacement, and what most Microsoft teams actually use for the UWP kernel components.
https://docs.microsoft.com/en-us/cpp/windows/universal-windo...
Because most C++ devs would rather use something more standards friendly, there is work in progress to eventually replace C++/CX with C++/WinRT, taking advantage of C++17 features.
“Embracing Standard C++ for the Windows Runtime"
https://www.youtube.com/watch?v=lm4IwfiJ3EU
“Putting Coroutines to Work with the Windows Runtime"