From what I understand C# deals with memory management, but can a?
C# is garbage collected, which means the system keeps track of which objects have references pointing to them, and which ones don't, and will periodically run a garbage collection pass to free up any unused memory. If you want an object to get collected by the garbage collected you can set all the references to that object to null.