Возможный дубликат:
Почему Array.Length является int, а не uint
Есть ли причина, по которой .NET Framework не использует неподписанные типы данных?
Не следует ли использовать их в моем коде, но, например, свойство Count List < > является int. У вас нет отрицательного счета, так почему бы его не определить как uint? Должен ли я использовать только int, хотя я знаю, что счетчик не может быть отрицательным?