When an Application raises ThreadAbortException and it is not properly handled by the code this causes the Application Pool to crashed leading to Service Unavailable error on the site.
Response.End() work-around
HttpContext.Current.ApplicationInstance.CompleteRequest()
Response.Redirect() work-around
Response.Redirect(someURL, false)