Interop for C++ and C# would be very very different things. C# is a VM language to begin with and even if you were to compile down to Machine code it has a very heavy runtime. C++ would be closer to the current approach with C but still quite complicated. Biggest problem would probably be the type system with the Standard Library. Template instantiation would be an incredible challenge as well. Combine that with different Compilers, platforms, ABIs and Standard Library implementation and you got a recipe for complexity. While technically not impossible (and definitely made easier by them already using clang) it would definitely be in the years ballpark