Tudo bom Raul?
Então, as palavras Get e Set servem para manipular o contexto, veja bem, uma vez tendo essas assinaturas você pode fazer com que tua propriedade seja apenas "Setável" ou "Obtível".
Definir as características das tuas propriedades é uma boa prática em programação, já que tu delimita/direciona aquela propriedade para um fim.
Ela é muito utilizada quando se entra na parte de Encapsulamento, já que ao prender uma Instância de uma classe com o delimitador "Private", você restringe o acesso aquelas propriedades, ou seja, aquela propriedade:
private double _saldo
Só pode ser manipulada pela própria classe, se você precisa estabelecer uma regra para manipular _saldo, você poderia aplicar em cima da propriedade private, por exemplo:
private int _xxx;
public int xxx
{
get
{
return _xxx;
}
set
{
if ((value > 0) && (value < 13))
{
_xxx = value % 2;
}
}
}
De qualquer forma, hoje, essa assinatura que temos:
Public String Titular {get; set;}
Por baixo dos panos, realiza a mesma coisa, só que não permite manipular o valor injetado.
É uma coisa do C# conhecida por : Açúcar Sintático.
Espero ter ajudado.