Более современные версии Windows имеют версию с мини DTC в ядре.Он не распространяется, но использует тот же API - но он может обрабатывать только один ресурс для каждой области транзакции.
TransactionScope использует это при запуске, а затем «продвигает» транзакцию к реальному DTC в тот момент, когда второй ресурсдобавлено (ресурс в вашем случае это соединение с базой данных).Таким образом, если ваш вариант использования прост, вы избегаете (высоких) издержек DISTRIBUTED части кода неисправности и можете работать без запуска службы.
Дополнительную информацию о Kernel Transaction Managger можно найти по адресу http://en.wikipedia.org/wiki/Kernel_Transaction_Manager
MS добавила его еще и потому, что NTFS стала транзакционной, и ей нужно было убедиться, что DTC доступен.
http://www.codeguru.com/cpp/article.php/c18309/