ViewBag is a dynamic property that takes advantage of the new dynamic features in C# 4.0. Basically it is a wrapper around the ViewData and also used to pass data from controller to corresponding view.
- It’s life also lies only during the current request. If redirection occurs then it’s value becomes null.
- It doesn’t required typecasting for complex data type.
Below is a summary table which shows different mechanism of persistence. Credit:CodeProjectArticle