Требуется ли хэш-сет для содержимого?
Необходимый? №
Будет ли [List<T>.Contains
] медленнее, чем [HashSet<T>.Contains
]?
Возможно. Это зависит от того, как реализован List<T>.Contains
(возможно, это линейный поиск).
Я отвечу на вопрос, который вы не задавали.
Имеет ли это значение?
Это зависит. Вы должны закодировать оба, профилировать и посмотреть, не является ли это узким местом в вашем приложении. Если это не так, просто придерживайтесь List<T>.Contains
.