Этот вопрос не имеет прямого отношения к IEnumerable, но относится к хорошим практикам проектирования ООП в целом.
Поскольку вы выставляете PieceMovement как IEnumerable, каждый объект, реализующий IEnumerable, является хорошим кандидатом.
Вы никогда не должны делать предположения о фактическом типе, поэтому ваша идея хороша для меня. Я также обычно использую Список