The two lines in the method refer to the same class. The compiler knows to search all the namespaces specified in the using clauses for classes. The second one fully specifies the namespace so the compiler doesn't have to do a search.

using is a keyword, System is a namespace
I don't know what the System.Transaction namespace is.

It's for creating your own transaction based system where you can do things like rollbacks in case you need to. For example, let's say you need to write a program to transfer money to another bank. This has several steps:

Notify other bank of amount/account.
Verify other bank got the right amount/account.
Subtract money from the account.
Verify that money was added to the other account.

If any of these fail, you want to make sure that you rollback the transaction so it is like it never happened. Otherwise you end up in an invalid state that causes everyone to be unhappy :)