In ASP.NET, when should I use Session.Clear() rather than Session.Abandon()?
Both Session.Clear() and Session.Abandon() get rid of session variables. As I understand it, Abandon() ends the current session, and causes a new session to be created thus causing the End and Start events to fire.