Я уверен, что вы можете придумать примеры, но за пять лет разработки на C # я не нашел подходящего примера для этого.Пример Джона К. прекрасно иллюстрирует предполагаемое использование модификатора, однако я думаю, что требования, которые приводят к этой ситуации, проблематичны.В примере с Джоном К. у класса есть «дружественный» доступ в сборке, и в целом это проблема, потому что эти классы, вероятно, «спрашивают», а не «говорят» (программирование не вежливо, лучше сказать, чем спросить).).В каком случае у вас есть полезный расширяемый класс, который Друзья могут вызывать методом, а другие нет?
Другое использование было бы для тестирования доступа (т.е. вы хотите, чтобы он был защищенным, но внутренним, чтобы ваши вызовы уровня сборки могли его вызывать).Это тоже проблемная ситуация - когда вы выставляете вещи как внутренние для тестирования, я думаю, что это запах проекта, с которым обычно может справиться внедрение зависимостей.