Что лучше использовать для авторизации пользователей cookie или сессии?
Сессии чаще всего держатся на cookie: с каждым запросом браузер передает куку с идентификатором сессии, и php вытаскивает из своего хранилища – файлов, Redis, базы данных, как настроете – сессионные данные для этого id.
Т.е. различие в том, где хранить сами данные сессии: на сервере или на клиенте.
Всё, что приходит с клиента можно подделать. Поэтому лучше использовать сессии.
Обычно это связанные вещи. Иначе как вы определите к какой сессии относится данный пользователь? Если конечно не используется php-session-trans-id.