bom dia Gabriel, tudo bom? Utilizar o "this" é opcional tanto no Java quanto no C#. Ele é utilizado em casos de ambiguidade, por exemplo quando recebemos um parâmetro de um construtor que tem o mesmo nome que algum atributo da nossa classe. Por exemplo:
public class Jogador
{
private string nome;
private int idade;
public Jogador(string nome, int idade)
{
this.nome = nome;
this.idade = idade;
}
}
Nesse caso utilizamos o diz para identificar que estamos atribuindo a propriedade nome da classe Jogador com o parâmetro nome recebido pelo construtor.
Em outros casos, como o que vc mencionou, sobre a chamada de métodos, o uso do this
é opcional. Eu opto por sempre utilizar porque também programa em JS orientado a objetos e no JS o this
não é opcional e se esquecermos de coloca-lo teremos erros no programa.
Com essa troca de linguagens eu optei por colocar o this
no C# e assim diminuir a chance de esquecer ele quando estou trabalhando em JS.