Que sont réellement les objets
Je suggère de considérer les objets comme des structures... et les références d'objets comme des pointeurs vers cette structure.
Si vous instanciez un objet, vous réservez de la mémoire pour un "struct" avec tous ses champs (et une référence à la classe qu'il implémente), plus toute la mémoire réservée par le constructeur (autres objets, tableaux, etc...).
Dans List, vous réservez de la mémoire pour le maintien de l'état (je ne sais pas comment c'est implémenté en C#) et le tableau interne initial, peut-être de dix références. Donc... si vous comptez, c'est quelque chose comme (en supposant un runtime 32 bits, je ne suis pas un spécialiste de .net) :
- pointeur vers la classe : 4 octets
- pointeur vers le tableau : 4 octets
- de Capacité initiale références : 40 octets
Donc, selon mon estimation, il s'agit d'environ 48 octets. Mais cela dépend de l'implémentation.
Comme le dit SoloBold : la plupart du temps, ce n'est pas digne.