Pessoal, boa noite.
Vejam este link sobre memória heap vs. stack, no Delphi.About
http://delphi.about.com/od/windowsshellapi/a/heap-stack-explained-for-delphi-developers.htm
Em síntese, Stack :
Local routine (method, procedure, function) variables.
Routine parameters and return types.
Windows API function calls.
Records (this is why you do not have to explicitly create an instance of a record type).
Heap :
Creating an instance of a class.
Creating and resizing dynamic arrays.
Explicitly allocating memory using GetMem, FreeMem, New and Dispose()
Using ansi/wide/unicode strings, variants, interfaces (managed automatically by Delphi).
Já serve como um norte para estudos!
Abraços,
William Duarte