Я бы использовал автоматически увеличивающееся число, обычно int.
Вы хотите, чтобы размер ключа был как можно меньше. Это сохраняет ваш индекс небольшим и приносит пользу любым внешним ключам. Кроме того, вы не тесно связываете дизайн данных с внешними пользовательскими данными (это относится и к GUID aspnet).
Обычно GUID не являются хорошими первичными ключами, так как они большие, и вставки могут происходить на любой странице данных в таблице, а не на последней странице данных. Основное исключение - если вы используете несколько реплицированных баз данных. GUID очень полезны для ключей в этом сценарии, но я предполагаю, что у вас есть только одна база данных, так что это не проблема.