If you do not enlist the connections (which is possible) your TransactionScope
has no effect. You don't want that.
If you enlist multiple SqlConnections
you get a distributed transaction by design. This is fundamentally so. If you are lucky, both will use the same internal pool connection and avoid using MSDTC (and instead use SQL Server lightweight distributed transactions). This, however, is never guaranteed and subject to timing issues. It is a performance optimization. I hate this optimization because during testing it always happens and masks the underlying issue.
Don't open multiple connections. Reuse the same connection.