Проект ограничен одним языком, потому что под капотом проект является не чем иным, как сценарием MSBuild, который вызывает один из компиляторов командной строки для создания сборки из различных файлов исходного кода, «содержащихся» в папка проекта. Для каждого языка существует свой компилятор (например, CSC.exe для C #), и то, что должен делать каждый проект, чтобы превратить «содержащийся» исходный код в сборку, отличается для каждого языка.
Чтобы позволить нескольким языкам быть скомпилированными в одну сборку, проект в основном должен будет создать сборку для каждого языка, а затем IL-Merge их. Это дорого, требует сложной автоматизации и генерации кода проекта, и в большинстве случаев это довольно незначительная потребность, поэтому команда VS просто не встроила его.