Взгляните на пространство имен System.Diagnostics
. Там много вкусностей!
System.Diagnostics.StackTrace t = new System.Diagnostics.StackTrace();
Это действительно хорошо, если вы будете изучать, что происходит под капотом.
Я бы порекомендовал вам взглянуть на решения для ведения журналов (такие как NLog, log4net или корпоративная библиотека шаблонов и практик Microsoft), которые могут достичь ваших целей, а затем и некоторых. Удачи, приятель!