VBからC#に行く人の多くは、VBでのObject型に
いろんなオブジェクトを入れることが出来たのを、
オブジェクト指向の基礎とは思ってないと思うよ。
VB自体のいろんなところに偽物オブジェクト指向が満載だから、
C#に移ったときにどれが偽物でどれが本物だったかを確認することに
なるのです。C++やJava、Delphiから入る人は
そうじゃないのかもしれないけどね。