Mono, XSP, Xamarin, etc. make your argument pretty much moot if you set up properly. C# is an ECMA standard, most of the C# source code is open source or is being open sourced, and there is a large and active open source C# community. This may have been true 5-10 years ago, but if you're really super anti-MS, you can still use C# today. It's a fantastic language with fantastic libraries.
Disclaimer: I've only toyed around with mono for web programming, I've not used it in production, and the baked in authentication libraries (aka Forms Authentication) seem to have some problems still, but we ARE using Xamarin in production for our mobile apps and it's working fine.
Some colleagues of mine work on a C# windows app - I thought I couldn't help them out, as I use Linux. Maybe I can though, based on what you're saying.
Can I take a C# project targeting Windows, develop compile and developer-test on Linux, then second test and deploy to Windows?
Probably not, the language and most core libraries are supported by Mono, but things like WPF etc, are windows only.
So unless your Windows app is in GTK#, you won't be able to help them.
Saying that C# is multiplatform is like saying that Objective-C is, it's true technically, but having an app that run on both platform is a PITA because most libraries are not cross platform.
Also, the goal is the make the Mono VM binary compatible with .NET apps compiled on windows. At the very least I'm able to get basic ASP.NET projects up and running by compiling on windows and copying the bin directory to the Linux machine and starting XSP4. Like i said though, i was unable to get forms authentication working due to a few methods not being implemented yet on Mono for forms auth.
Mono, XSP, Xamarin, etc. make your argument pretty much moot if you set up properly. C# is an ECMA standard, most of the C# source code is open source or is being open sourced, and there is a large and active open source C# community. This may have been true 5-10 years ago, but if you're really super anti-MS, you can still use C# today. It's a fantastic language with fantastic libraries.
Disclaimer: I've only toyed around with mono for web programming, I've not used it in production, and the baked in authentication libraries (aka Forms Authentication) seem to have some problems still, but we ARE using Xamarin in production for our mobile apps and it's working fine.