Свойства vs переменные классов

Свойство это функциональная абстракция данных. В чем преимущества использования свойств по сравнению с прямым доступом к полю объекта?

Недостаток использования свойств один — накладные расходы на вызов функции или, в том случае, когда свойство является вирутальным, виртуальной функции. Кроме того, свойства не поддерживают initonly инициализацию, т.е. когда значение инициализируется в конструкторе объекта и впоследствии не может быть изменено.