Да, если каждая страница использует сеанс, asp.net будет сериализовать действия против него. Если одной или нескольким из этих подстраниц требуется только доступ только для чтения, отметьте это в директивах @Page (например, EnableSessionState = "ReadOnly") или полностью отключите, если информация о сеансе не используется.
Как правило, это плохой план, если на сервере ожидают длительные действия, и, как вы обнаружили, это особенно верно, если они используют сеанс.
Редактировать
Последний FAQ здесь также описывает эту сериализацию.
Редактировать 2
В ответ на комментарий re: закрытие дочернего окна:
В конечном итоге он будет обрабатывать другие запросы, как только процесс на стороне сервера завершит любой запрос, над которым он работал. Закрытие дочернего окна не прерывает запрос на стороне сервера. Лучшее, на что вы можете надеяться, это то, что длительный запрос имеет возможность периодически проверять IsClientConnected и прерывает его обработку, если он больше не актуален.