secondo me hai 3 strade davanti:

a) Scarichi tutti i dati lato client in una struttura dati (quale potrebbe essere xml o array javascript o stringhe separate da pipe o qualsiasi cosa tu voglia) mantenendo l'associazione però tra province e comuni poi gestisci tutto via javascript. Vantaggi: non affatichi il server, e una volta scaricata la pagina dovrebbe (ma dipende dal client) essere molto veloce nell'elaborazione. La pagina non viene ricaricata. Svantaggi: devi scriverti un bel po' di javascript per gestire il tutto

b) Scarichi solo le province lato client e sull'onchange della select chiami una funzione che tramite un oggetto HTTPRequest fa una richiesta al server che riesegue una query parametrizzata per scaricare solo i comuni che ti servono. Vantaggi: scarichi solo quello che ti serve, e la pagina non viene ricaricata. Svantaggi: devi implementare l'oggetto HTTPRequest, che non esiste uguale per tutti i browsers ma devi personalizzare la funzione in base all'user agent. Vantaggi: è veloce ed elegante come soluzione.

c) Sull'onchange della select delle province ricarichi la pagina salvandoti i dati già inseriti nella session o la riposti in un form nascosto, in questo modo ricaricando la pagina puoi farti la query mirata direttamente lato server. Vantaggi: è facile. Svantaggi: è poco elegante, devi scrivere un mucchio di codice asp per salvarti i dati già inseriti.