If, in a Windows application, you are invoking a method in a class that accesses namespaces that do not exist on the client machine, no thread will get pooled an no exception will be thrown. You can validate this by using the the GetAvailableThread before and after you invoke your method.