Actually assembly is the minimal unit of deployment, not compilation. The minimal unit of compilation is the netmodule[1]. You can compile from different languages as netmodules, then link the resulting netmodules together in an assembly.<p>By the way, this is not a scenario supported by Visual Studio, so it requires using command line tools. So for any practical purpose, you&#x27;re right that multi-language solution require the use of multiples assembly projects, which is tedious.<p>[1] <a href="http:&#x2F;&#x2F;blogs.msdn.com&#x2F;b&#x2F;junfeng&#x2F;archive&#x2F;2005&#x2F;02&#x2F;12&#x2F;371683.aspx" rel="nofollow">http:&#x2F;&#x2F;blogs.msdn.com&#x2F;b&#x2F;junfeng&#x2F;archive&#x2F;2005&#x2F;02&#x2F;12&#x2F;371683.as...</a>