Лучший ответ, который я могу дать, - описать процесс нашей команды в городе. Я не могу сказать вам, что будет работать лучше для вас. Я также не могу сказать вам, что типично, потому что только в моей фирме у нас есть около 8 способов использования teamcity.
В наших проектах .NET (которые, как вы упоминаете, упоминаете MSBuild / NAnt), у нас есть сборки, состоящие из нескольких этапов. Один использует средство компоновки решения teamcity, второй использует модуль тестирования nunit, а последний использует msbuild для копирования файлов.
У нас есть еще одна сборка .NET, которая следует аналогичному шаблону, но добавляет несколько шагов, вызывая пользовательские инструменты, написанные на python.
У нас есть несколько сборок java, которые выполняют только бегуна NAnt.
Делайте то, что лучше всего подходит вам и вашей нынешней среде. Живите с этим некоторое время, а затем посмотрите, что вы хотите изменить.
Если у вас уже есть хороший сценарий msbuild или nant, просто укажите на него teamcity и используйте его для запуска.
Мне нравится использовать средство запуска teamcity, потому что оно просто работает. То же самое с их бегуном. Но MSBuild / NAnt действительно хорош для работы с шаблонами файлов.
Надеюсь, это поможет.