1: довольно хорошо, на самом деле. Существует не вся полная инфраструктура, поэтому, если вы пишете код, который должен работать как на MS .NET, так и на моно, вам нужно заранее собрать и протестировать обе платформы
4: да - хотя такие вещи, как WPF / WCF / WF (3.0) отсутствуют или сокращены
Я мало что знаю о среде development , поскольку я использую VSTS (в Windows) и просто использую скрипт NANT для сборки на моно ...