The using statement is basically just a wrapper that does the same thing as a try...finally block. What it actually does in the finally block I'm not sure, but I think it calls the object's Dispose() method. Based on that and what the implementation of the Dispose method is on the object you are "using" you can decided whether or not to wrap it.
One recommendation: don't wrap code in try...catch if you aren't planning on doing something constructive in the catch. I have seen people wrap everything, everywhere in try...catch blocks only to simply rethrow the original exception. That is pointless. Just let the exception bubble up. It will be much easier to trouble shoot and debug if you see the line of code that threw the original and meaningful exception than to just see the error message on the line "throw ex;".
-Peter
compiledthoughts.com