MVC is a framework and stands for Model – View – Controller. It is another way to create web based application. As compare to Asp.net form based application it is quite light weighted.
Razor is a view engine and very powerful concept which is introduced in MVC 3. Razor is simply a new programming language which allows you to embed your C# and VB code with HTML. When we create Razor for C# then it adds .cshtml file but when we create Razor with vb then it add .vbhtml file.
Get is the default http request of MVC application.
FormCollection is based on Post Request.
ViewData is used to access data from controller to corresponding view. ViewData stores data as key-value format. ViewData type is ViewDataDictionary.
ViewBag is used to access data from controller to corresponding view. ViewBag used dynamic property which introduced in C# 4.0. It is actually a dynamic ViewData Dictionary so you can say that it’s just a wrapper around ViewData.