As far as I'm aware C# (and .NET) is managed. So your code and objects will get disposed of.
A good trick, is to look at using Using
blocks. These are especially useful around data connections.
The other obvious piece of advise is to actually run it on the machines you will be using it and, and see how it performs.
Hope this helps.