What thought process changes around application design would you recommend to someone completely new to asp.net with MVC who has typically worked on classic asp.net projects, in terms of new ways MVC expects you to think about your design?
Aside from the conventional separation of concerns bit where each layer has it own responsibility, there are new ways of working which one needs to be aware of. For eg. in MVC 3 we have the razor engine where you cant use any server controls. There is no postback. The page lifecycle looks different. etc.
More specifically, what are the things one will need to unlearn or re-learn in order to make the shift from classic asp.net to asp.net MVC with webforms or razor.
Thanks for time and sharing your views...
Edit
Has anything changed with respect to sessions, caching? Also, I am trying to understand routing. It seems to be required to be done for every view there is in my mvc webforms application along with the parameters. Wont this mean that I have to consider many different permutations there? In razor there seems to be no such need to map request routes. So under what conditions do I go for Razor over webforms in MVC applications?