Резюме для программиста
Насчёт каверзных вопросов по наследованию - по-моему, сокрытие методов, это плохая практика. Я щас не помню, но вроде компилятор в последних версиях Студии об этом придупреждает и предлагает добавить слово new перед одноимённым методом в потомке?
Но там сама суть важна - как в группе методов из иерархии наследования выбирается нужный метод, учитывая все ключевые слова определиня и наследования этих методов, и правил приведения типов параметров.
А влияют ли вообще правила приведения типов на выбор метода в группе? По-моему, если такой вопрос задаётся, то уже что-то хреново в вашей системы наследования - слишком много "магии". Надо постоянно держать в голове все комбинации всех ключевых слов и дополнительных правил, чтобы выбрать правильный вариант из, зачастую, десятков возможных. Плохой дизайн.