Here
public class testClass
{
public int firstInt; // a class variable/Field
public int SecondInt { get; set; } // property
}
Variables/Field:
A variable corresponds directly to a memory location. You define a variable with a single declaration statement. A variable can be a local variable, defined inside a procedure and available only within that procedure, or it can be a member variable, defined in a module, class, or structure but not inside any procedure. A member variable is also called a field
Properties:
A property is a data element defined on a module, class, or structure. You define a property with a code block between the Property and End Property statements. The code block contains a Get procedure, a Set procedure, or both. These procedures are called property procedures or property accessors. In addition to retrieving or storing the property's value, they can also perform custom actions, such as updating an access counter.
See the Msdn link here http://msdn.microsoft.com/en-us/library/sk5e8eth.aspx for explanation
Also this question has a wonderful explanation here What is Difference between Property and Variable in C#