Собственно хотел предложить для обсуждения
вот эту статью, в ней автор немного со стороны веб-разработки рассматривает подходы LAMP и Windows/VM(тут берётся Java, но многое подойдёт к CLR):
многопроцессный (multi-process) и многопоточный.
За счёт уменьшения связанности компонент решение получается более масштабируемым.
З.Ы. Хотя возможно в ряде приложений такая связанность будет наоборот выгоднее.