.NET Memory Management
NETBlock — release any .NET objects created during evaluation once evaluation finishes
BeginNETBlock, EndNETBlock — mark the beginning and end of a .NET block
KeepNETObject — allow a .NET object to persist when the current NETBlock ends
ReleaseNETObject — finish using a .NET object in the Wolfram Language
SameObjectQ — whether two NETObject expressions reference the same .NET object
LoadedNETObjects — list of all .NET objects in use
LoadedNETTypes, LoadedNETAssemblies — list of all .NET types or assemblies in use