What is the difference between a class and an object?
A class is a user-defined blueprint or prototype from which objects are created. Basically a class combines the fields and methods(member function which defines actions) into a single unit. In C#, classes support polymorphism, inheritance, and also provide the concept of derived classes and base classes.
A class is like a blueprint that specifies what the type can do. An object is a block of memory that has been allocated and configured according to the blueprint. A program may create objects of the same class. Objects are also called instances. "An object is an instance of a class".
For instance, in my Bugtracker MVC app, I have designed many classes. I defined what a company is for the application. I have defined the blueprint for a object of type "Company".
I then instantiate the company object to use as my return type. This gives me a block in memory allocated and configured according to the company type.