Odpowiedzi:
Page jest specjalną obsługą przypadku.
Ogólny program obsługi sieci Web ( *.ashxprocesor oparty na rozszerzeniu) jest domyślnym programem obsługi HTTP dla wszystkich programów obsługi sieci Web, które nie mają interfejsu użytkownika i które zawierają @WebHandlerdyrektywę.
Program obsługi stron ASP.NET ( *.aspx) to domyślny program obsługi HTTP dla wszystkich stron ASP.NET.
Wśród wbudowanych programów obsługi HTTP znajdują się również funkcje obsługi usług internetowych ( *.asmx) i obsługi śledzenia ( trace.axd)
MSDN mówi :
Procedura obsługi ASP.NET HTTP to proces (często nazywany „punktem końcowym”), który jest uruchamiany w odpowiedzi na żądanie skierowane do aplikacji sieci Web ASP.NET. Najpopularniejszym programem obsługi jest program obsługi stron ASP.NET, który przetwarza pliki .aspx. Gdy użytkownicy żądają pliku aspx, żądanie jest przetwarzane przez stronę za pośrednictwem programu obsługi strony.
Poniższy obraz ilustruje to:

A jeśli chodzi o drugie pytanie:
Czy ashx obsługuje więcej połączeń niż aspx?
Nie myśl tak (ale na pewno nie mniej niż).
HttpHandlerto tylko sekcja żądania, która jest wykonywana przed Pagesekcją.
.aspxwykorzystuje pełen cykl ( Init, Load, PreRender) i może reagować na kliknięcia przycisków itp ma tylko jedną metodę..ashxProcessRequest
.aspx to renderowana strona. Jeśli potrzebujesz widoku, użyj strony .aspx. Jeśli potrzebujesz tylko funkcji zaplecza, ale pozostaniesz w tym samym widoku, użyj strony .ashx.
Dla ludzi, którzy wcześniej programowali w nodeJs, szczególnie używając expressJS. Myślę .ashxjako warstwy pośredniej , która wywołuje nextfunkcję. Podczas gdy .aspxbędzie kontrolerem, który faktycznie odpowie na żądanie albo w pobliżu res.redirect, res.sendalbo cokolwiek.