Storing data for each user session in the Session cache is a great way to optimize your web application's performance. You can use in-process or either of the two out-of-process state servers to manage session. Configuring session state caching is relatively easy. The most important part is picking the session server that's right for you, and determining what you want to store in the Session cache.
Use in-process Session caching for small to medium applicationsyour company's intranet, perhapswhere it's acceptable to lose session information and have the user start over. Consider using one of the two out-of-process methods for mission-critical applications, store fronts, or web farms. For maximum reliability, use Microsoft SQL Server for session information.