Which one do I call?
Is it necessary to call both?
Will the other throw an exception if I have already called one of them?
Calling Close() will internally call Dispose() to release the resources.
See this link for more information: msdn