Alle Objekte die man selbst (also im Programmfluss) erzeugt, muss man auch wieder freigeben.
Ausnahme: Objekte, die in andere Objekte eingefügt werden, zB Listenelemente in eine Liste, können auch von dem Eigentümer freigegeben werden (vergleiche
TObjectList.OwnsObjects), sobald dieser wiederrum von Dir freigegebn wird.
Was Du zur Designzeit auf die Form legst (und nur das) wird beim Programmende bzw. beim freigeben der Form freigegeben.
Es gibt sicher noch ein paar Feinheiten, die im Laufe dieses lesenswerten Threads von unseren Koryphäen hinzugefügt werden, aber das dürfte ein passables Basislager sein.
Sherlock