Тут не про использование метода из базового класса на самом деле.
Суть в том что переопределенный метод будет работать если привести класс к базовому классу A,
а перекрытый метод будет работать только в конкретном классе B.
new
class A { public string GetInt() => "10"; }
class B : A {public new string GetInt() => "20";}
B item= new B();
item.GetInt(); // вернет 20
A item2 = (A)item;
item.GetInt(); // вернет 10
override
class A { public virtual string GetInt() => "10"; }
class B : A {public override string GetInt() => "20";}
B item= new B();
item.GetInt(); // вернет 20
A item2 = (A)item;
item.GetInt(); // вернет 20