Ответ 1
Да, в общем, вы можете делать все, что вы просите.
Хорошей отправной точкой является страница ASP.NET на веб-сайте Mono, она охватывает эти вопросы довольно подробно.
Ответы на конкретные вопросы:
Могу ли я правильно запускать проекты и исходные коды Visual Studio в Mono?
Как правило, вам не нужно ничего менять, но вы можете написать специфический для платформы код для ASP.NET(т.е. использовать P/Invoke или искать C:\Windows). Моно имеет анализатор миграции, который может проверить, влияет ли это на вас. Вы можете запустить Apache и Mono в Windows, если хотите.
Мои клиенты используют IIS для ASP.NET. Находит ли их миграция? Другими словами, мои проекты Mono работают в IIS без каких-либо изменений или проблем?
Вы можете (и должны) протестировать свой код на всех платформах, на которых вы развертываете, но должно быть легко написать код, который также можно развернуть в моно.
Могу ли я размещать веб-проекты Mono ASP.NET в Apache без каких-либо проблем?
Да, используйте mod_mono для Apache.
Могу ли я использовать свои навыки в веб-формах ASP.NET в Mono именно?
Да, Mono реализует веб-формы ASP.NET 2.0, точные детали можно увидеть здесь