here it is as
* typeof is used to get the type based on a class. That means if you use typeof with object, it will gives you error. You must pass class as parameter.
* GetType is used to get the type based on an object (an instance of a class). Means GetType needs parameter of object rather than class name.
string instance = "";
Type type1 = typeof(string);
Type type2 = instance.GetType();
Console.WriteLine(type1 == type2);