Авторизацию я как-то не изучал, но что-то не вижу никакой логической разницы между сессиями и куками.
Во-первых, сессии разве бывают без куков?
Во-вторых, если куки (допустим, в куках хранится токен - для примера) хранятся ТОЛЬКО на клиенте, то как сервак будет проверять, верный ли ему токен сует клиент, и от какого вообще аккаунта (юзера) этот токен? Значит, опять же токен и на серваке храниться должен, либо в БД, либо в файлах, возможно с примением редиса...
Короче, по-моему, сессии - это лишь частный случай решения на базе куков.
UPD: да и сам вопрос "что лучше" изначально абсурдный. Вроде очевидно, что раз есть 2 инструмента для одной и той же задачи, значит, один лучше для одних случаев, другой - для других. И без уточнения задачи ответить "что лучше" нельзя.