Question: I have the following code:

```
new Thread(new ThreadStart(delegate()
{
    while (true)
    {
        //something
    }
})).Start();

```

Can garbage collector finalize this instance of `Thread` while it is in the `Running` state?

Answer: 
The CLR keeps track of all running threads. As long as there are references to objects they won't be garbage collected. And since the CLR keeps a reference to all running threads the GC won't touch them.
No; running threads count as roots. A running thread will not be collected, nor will anything referenced by the active part(s) of the *stack* for that thread.