I'm getting the impression that you don't understand the statelessness of a web application.
Application_Start ONLY runs ONCE when the first client hits the site after the application has been unloaded (server reboot, IIS restart, etc).
Session_Start runs on the first hit for a new client.
Those methods are not user specific. This article might help you get a better understanding of Global.asax:
http://aspalliance.com/articleViewer.aspx?aId=440&pId=
From your posts it sounds like you want to affect the user's experience at some point in time after they have entered the site. This would typically require some kind of session value storage (asp session, a cookie) to track the user's time.
If you want to have a window pop up at the designated time you need to use javascript so it happens on the client end. You can't trigger a client event from the server after the client has received a page.
You should probably write some javascript that gets written to the all your site pages. You can use the client side "setTimeout" method to set an event that will happen after the predetermined wait time. The trick will be that you'll need to save the site entry time (session or cookie) and recalculate the wait time on each page hit. That way as the user moves around your pages they'll always have the popup primed to fire at the right time based on the time calculation.
-Peter