Событие application_end
в основном происходит, когда пул IIS перезагружается или само приложение выгружается. Следует также отметить, что изменение зависимого файла (например, web.config) приведет к перезагрузке приложения, что вызовет событие application_end, в то время как оно само закрывается.
Следует отметить, что единственный случай, когда я обнаружил срабатывание конечного события приложения, когда истекло время последнего сеанса пользователя, содержится в какой-то старой документации от 2001 года. Я не уверен, что этот критерий все еще применяется.