VB.NET Application does not fully close-Collection of common programming errors

One possibility is that you have some threads apart from the main thread running, and those aren’t background threads. In general, try debugging it: attach to it from VS, and use Pause button to break it, and look at what threads are there, and what they are doing.