ASP.NET supports different session state storage options:
In-Process is the default approach. It stores session state locally on same web server memory where the application is running.
StateServer mode stores session state in a process other than the one where application is running. Naturally, it has added advantages that session state is accessible from multiple web servers in a Web Farm and also session state will remain preserved even web application is restarted.
SQLServer mode stores session state in SQL Server database. It has the same advantages as that of StateServer.
Custom modes allows to define our custom storage provider.
Off mode disables session storage.