Как сказал @ duffymo , вам, вероятно, лучше требовать .NET, чем Mono. Тем не менее, есть некоторые сценарии, в которых использование Mono имеет смысл. В частности, если вы используете mkbundle для создания сборки без необходимости установки Mono. Есть даже способ статически связать среду выполнения с исполняемым файлом, хотя это влечет за собой некоторые лицензионные требования, которые необходимо учитывать.