Необходимо различать объект, который делает вызов (если есть), цель вызова и вызываемый метод. Например, ваш стек вызовов может легко выглядеть так:
FormA.Method3()
FormB.Method2()
FormA.Method1()
Это экземпляр FormA, выполняющий Method1, вызывающий Method2 для экземпляра FormB. Затем он вызывает Method3 для экземпляра FormA - либо той же FormA, что и первая, либо другой. Это не имеет значения.
Это на самом деле не тот случай вызова «что-то внизу», потому что кадры стека не представляют объекты - они представляют методы (и состояние в этих методах). Помогает ли это вообще или это еще больше сбивает с толку?