C# multiple inheritance, using protected member
<p>I have little problem using inheritance. I can neither change the value of first and second in class C nor first in class B when they are protected. If these variables are public everything works fine, but in this case what's the point of using protected?</p>

<pre><code>class A
{
    protected int first { get; set; }
}

class B : A
{
    protected int second { get; set; }

    public Show() 
    {
        A a = new A();
        a.first = 5;
    }
}

class C : B
{
    private int third { get; set; }

    static void Main()
    {
        B b = new B();
        b.first = 1;
        b.second = 2;
    }
}
</code></pre>