Пока вы используете последнюю версию моно, она работает довольно хорошо.Обратите внимание, что в зависимости от используемого вами дистрибутива linux вам может потребоваться собрать моно из исходного кода, а не использовать упакованную версию.
Однако вы должны убедиться, что вы тестировали все на моно во время разработки.Хотя почти все в .net 4 возможно в моно, linux и windows - это очень разные платформы, поэтому всегда будут некоторые вещи, которые нужно обрабатывать по-разному.Кроме того, есть несколько вещей, в которых .net и mono имеют несколько разные реализации.Например, установка значения в словаре во время итерации по этому словарю будет работать в .net, но вызывает исключение в моно - обойти это тривиально, но не то, что вы хотите отследить в размещенном приложении, если вы нене настроена хорошая моно среда разработки.