Si te fijas aquí
http://msdn.microsoft.com/es-es/libr...ansaction.aspx
Podras ver como es que se relaciona el Command con el Transaction, tan fácil lo hace que puedes usar un mismo Command conectado a un Transaction y que le cargue varios Querys.
SqlCommand cmd = new SqlCommand(consulta, connection, transaction);
cmd.ExecuteNonQuery();
cmd.CommandText = otraconsulta;
cmd.ExecuteNonQuery();
cmd.CommandText = Yotraconsulta;
cmd.ExecuteNonQuery();
Tran.Commit();
Leete lo que explica Microsoft pero cada ves que mandas un ExecuteNonQuery el Transaction lo agrega en su lista y al final cuando cargues todos los querys que quieras llamas el Commit() y se procesan los querys.
Saludos,