Will static members be ever collected by the garbage collector?
A static member to a reference type is a reference, which may or may not point to an instance. If it points to an instance, said instance will not be collected until the static member is unloaded. If the type is loaded in a specific AppDomain, that can be unloaded. Otherwise it only happens when the application is terminated.