Код, который вы разместили, является точной копией некоторого кода, который мы имеем здесь.
Уже 2 года работает нормально.
Каждый пользователь имеет доступ к своему сеансу. Каждый запрос к серверу - это новый поток. Несмотря на то, что 2 запроса являются одновременными, HttpContext.Current отличается для каждого из этих запросов.