One way lets you have validation or other code in the property set/get. The other way simply sets or gets the property with no additional code.
The Microsoft Help file explains the differences:
Using Properties (C# Programming Guide[
^]
Properties have many uses: they can validate data before allowing a change; they can transparently expose data on a class where that data is actually retrieved from some other source, such as a database; they can take an action when data is changed, such as raising an event, or changing the value of other fields.
Auto-Implemented Properties (C# Programming Guide)[
^]
Auto-implemented properties make property-declaration more concise when no additional logic is required in the property accessors. They also enable client code to create objects. When you declare a property, the compiler creates a private, anonymous backing field that can only be accessed through the property's get and set accessors.