Давайте добавим некоторый код, который фактически использует объект, чтобы прояснить, что на самом деле происходит:
while(true) {
// Here a new instance is created in each iteration:
MyTestClass myObject = new MyTestClass();
// Here the instance is still in use
// until here:
myObject.CallSomething();
// Here the instance isn't used any more,
// so the GC can collect it if it wants to.
// Setting the reference to null here:
myObject = null;
// is useless, as the GC already knows that the
// instance is unused before that time.
}