In Der Global.asax gibt es mehr Events als nur die 4, die standardmäßig in der global.asax aufgeführt sind.

Hier ist eine Liste aller mir bekannten Events:

Application_Start:
Tritt ein, wenn die Application gestartet wird

Application_Init:
Tritt ein nach _Start

Application_Disposed:
Tritt ein bevor die Instanz zerstört wird

Application_Error:
Tritt ein wenn unbehandelte Fehler auftreten. z.B. für Cusom-Errorpage Redirect.

Application_End:
Tritt ein, wenn die Application beendet wird

Application_BeginRequest:
Tritt ein, bei jedem Request den ein User macht. Das Session-Objekt ist hier noch nicht verfügbar.

Application_EndRequest:
Dannach ist der Request vollständig beendet.

Application_PreRequestHandlerExecute:
Unmittelbar dannach wird die Page oder der Webservice durch den ASP.Net handler  initialisiert.
Das Sessionobjekt ist hier bereits verfügbar

Application_PostRequestHandlerExecute:
Nach dem ausführen des ASP.Net handler.

Application_PreSendRequestHeaders:
Dieser Event tritt ein, bevor die Header zum Client geschickt werden.
An dieser Stelle können die Header noch geändert werden.

Application_PreSendRequestContent:
Dieser Event tritt ein, bevor der Content zum Client geschickt wird.

Application_AcquireRequestState:
Tritt ein, wenn ASP.NET den Current State bekommt(z.B. den Session-State) der mit dem Aktuellen Request asoziert ist.

Application_ReleaseRequestState:
Tritt ein, wenn ASP.NET alle Handler ausgeführt hat und veranlasst das State-Module den aktuellen Status zu speichern.

Application_AuthenticateRequest:
Tritt ein, wenn die Identität des Users als gültiger durch das Security-Modul validiert wurde.

Application_AuthorizeRequest:
Tritt ein, wenn der User authorisiert wurde die ressourcen des Securtity-Moduls abzufragen.

Session_Start:
Tritt ein, beim Start der Session

Session_End:
Tritt ein beim Ende der Session, aber nur wenn der sessionstatemode in der sessionstateMode in der web.config auf inProc steht!! Bei Stateserver und SQLServer wird dieser Event nicht mehr ausgelöst!!