i want to write a tcp server in c# under windows. can i run the same program or use the same code under mono without modification.
You have to be careful with what you write. Mono isn't near 100% supporting .NET on Windows, but it's a very good start. a TCP server might be tricky because it tends to be the places that do hardware interaction (like IO) that have the most compatibility issues.
Mono has a free tool called MoMA that can analyze a .NET Application and tell you if it is going to have problems. You can download it here: http://www.mono-project.com/MoMA
I would suggest developing the application under Linux/Mono, then checking that it works on Windows. You're less likely to encounter issues that way.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With