Sono sorpreso che nessuno abbia menzionato Spring.NET ? È disponibile da molto tempo e ha il vantaggio di essere basato sul Java Spring Framework (basato sull'Idea "IOC", e sulla separazione di pacchetti / spazi dei nomi, non c'è Java in Spring.NET) come per il suo maturità e facilità d'uso. Inoltre, se ti capita di utilizzare entrambe le lingue nel tuo ambiente professionale, è fantastico avere alcuni strumenti / API comuni tra entrambi.
Si integra abbastanza bene con NHibernate, fornisce strumenti di programmazione AOP e puoi facilmente farlo funzionare con ASP.NET MVC 2/3.
Per quanto riguarda Unity, non l'ho mai usato così non posso dirlo.
Posso solo aggiungere che esiste anche il LinFu Framework, che è un po 'più leggero di Spring. C'è un ottimo tutorial su come integrare LinFu con ASP.NET MVC per gentile concessione di Thomas Weller . Ho anche usato LinFu per uno dei miei progetti personali ed è stato davvero facile lavorarci.