I\'m comming from Java world mainly. So, C# properties do look nice.
I know that with C# 3.0 or above I can use Automatic Properties. I like it even more :).
The bog-standard answer would be "encapsulating the implementation detail of how and where the age is stored".
For retrieval purposes, a more realistic example might be that one day, you could potentially want to access the value in a way that means direct access isn't so good. For example, if it's a value that you might be caching elsewhere, or if it's a calculated value.
In terms of encapsulating the setting process, it means you can embed some model-level validation into the setter; if someone tries to set a conceptually invalid value, you can throw an IllegalArgumentException and reject it.
In these cases, the encapsulation means that all your existing code doesn't have to change because you had to wrap up the value in something.