Задался вопросом где хранится статическая переменная в .net? Но точного ответа так и не нашел...
Насколько я понял, то они хранятся в объекте типа, а значит в куче... Следовательно при каждом обращении к ним происходит распаковка?
Статическая переменная храниться в 1 экземпляре в памяти, и мета данных сборки на HDD.
Объект - хранит в себе все статические поля и методы (паттерн Flyweight).
Экземпляр - хранит в себе все не статические поля класса. (иначе он бы хранил не изменяемые копии повторяющихся данных).
На Youtube канал ITVDN, бесплатно доступна лекция из курса "C# Базовый", посмотрите.