Propriedade readonly protegida versus propriedade protegida

Eu tenho uma classe abstrata e gostaria de inicializar um campo readonly em seu construtor protegido. Eu gostaria que este campo readonly estivesse disponível em classes derivadas.

Seguindo o meu hábito de tornar todos os campos privados e expondo propriedades, eu implementei isto da seguinte maneira:

abstract class Foo
{
    private readonly int _field;

    protected Foo(int field)
    {
        _field = field;
    }

    protected int Field
    {
        get { return _field; }
    }
}

Mas então me perguntei se há realmente muita vantagem em manter o campo privado aqui. Estou ciente das vantagens das propriedades e há várias perguntas sobre esse assunto em geral, mas elas se concentram em campos públicos em oposição aos protegidos.

Então, devo mudar para a implementação abaixo ou não? Quais são as considerações e vantagens / desvantagens de estar ciente em ambos os casos?

abstract class Foo
{
    protected readonly int _field;

    protected Foo(int field)
    {
        _field = field;
    }
}

questionAnswers(7)

yourAnswerToTheQuestion