One of the fundamental principles of frameworks like ASP.NET MVC is that they are stateless, just like the Web is. ASP.NET Web Forms is an attempt to mimic a stateful paradigm over a stateless enviroment. It is a lie, in other words.
Using Session variable in an ASP.NET MVC application is a bit like tying a horn to a horse’s head, and calling it a Unicorn.