Если нет других переменных, которые ссылаются на элементы в коллекции, эти объекты должны быть переданы в сборщик мусора для очистки при следующем запуске GC.
Если вы, например, делаете это, когда sObj где-то является статической переменной, то когда система вызывает следующий GC, первый объект будет очищен, а второй, на который все еще ссылается sObj, не будет. *
d("a") = New clsCustom
d("b") = New clsCustom code.
sObj = d("b")
d.RemoveAll()