Como verificar a versão do SO em tempo de execução, por exemplo Windows ou Linux sem usar uma instrução de compilação condicional

Alguém sabe como determinar em qual plataforma seu código c # está sendo executado, por exemplo. se está sendo executado no linux ou no windows, para que eu possa executar código diferente no tempo de execução.

Eu tenho um aplicativo c # windows que quero criar para direcionar as plataformas windows e linux.

Até agora, criei 2 arquivos de projeto apontando para o mesmo conjunto de arquivos de código-fonte. Em seguida, uso uma instrução de compilação condicional em um dos projetos chamados LINUX.

Onde há diferença no código real, uso declarações codicionais usando a declaração de compilação condicional, p.

#if (LINUX)
 ' do something
#endif

Existe um jeito melhor de fazer isso? Eu realmente não quero ter 2 arquivos de projeto.

Desde já, obrigado.

questionAnswers(5)

yourAnswerToTheQuestion