Используя внутренний модификатор, он может быть доступен только:
Любым кодом из той же сборки, но не из другой сборки.
А если вы ссылаетесь на производный класс, используйте
Protected internal
Другой путь -
Вам необходимо подружить сборку с атрибутом InternalsVisibleTo.
Предполагая, что вы не подписываете свои сборки, это так же просто, как добавить атрибут InternalsVisibleTo уровня сборки в проект C # с именем сборки VB.Net. Обычно вы делаете это в AssemblyInfo.cs (в папке Properties)
[assembly:InternalsVisibleTo("MyVbAssemblyName")]