В C# есть четыре ключевых слова, которых нет в документации. Компилятор их принимает.Одно из них собирается на любой машине, а выполняется только на Windows. На Linux та же сборка падает. Дальше — как объект меняет свой тип на ходу и что на самом деле происходит при вызове метода у пустой ссылки. Читать далее