Сравнение SVN с TFS похоже на сравнение яблок и апельсинов. SVN - это система контроля версий, в то время как TFS - платформа ALM, как уже упоминали другие.
Предположим, что компания выбирает Subversion, CruiseControl.NET, какой-то инструмент управления Agile Project, средство отслеживания ошибок (Bugtracker.NET, Bugzilla, ...). Давайте предположим, что все инструменты, которые выбирает эта компания, это OSS, можно подумать, что это бесплатно, верно? К сожалению, вам все равно нужно будет начать интеграцию всех этих инструментов, и именно здесь реальные затраты.
Конечно, такая платформа, как Team Foundation Server, требует затрат на лицензирование и предлагает то же, что и все ранее упомянутые инструменты OSS, но уже хорошо интегрирована.
Таким образом, если вам нужны инструменты для поддержки вашего ALM и вы ориентированы на Microsoft, вам следует серьезно рассмотреть вариант TFS. Конечно, как технический специалист, интересно выяснить, как интегрировать Bugzilla с Subversion и инструментом управления проектами, и провести ночи, пытаясь выяснить, как мы экспортируем / импортируем все эти даты в специально разработанный инструмент отчетности, специально разработанный для отдел кадров за отчетами по отслеживанию времени и так далее. Вы понимаете, о чем я.
В конце концов альтернативный путь OSS стоит намного дороже, чем путь TFS, и люди просто не хотят его признавать, с другой стороны, если, конечно, вам нужна только система контроля версий, которая вам не нужна TFS. Но если это все, что вам нужно как разработчику, можете ли вы назвать себя серьезным разработчиком? ; -)