Web -> Condoglianze!
Le applicazioni Web sono composte da DUE MONDI!!!!
1) il mondo FRONT-END, che gira DENTRO i browser, in cui si programma in Javascript + CSS + HTML & tonnellate di librerie in JS & TONNELLATE di rogne legate alle incompatibilita' tra i vari browser. (da cui le condoglianze)
2) il mondo BACK-END, su cui gira il web server, che si puo' implementare in un'infinita' di linguaggi, TRA CUI C#
Ora, POTRESTI anche ipelagarti con ASP.NET, MA per farti le ossa, ti conviene ragionare in questi termini:
A) realizzi SOLO applicazioni SPA (Single Page Application)
B) il FRONT-END e' implementato TOTALMENTE e SOLAMENTE in Javascript + CSS + HTML & librerie correlate
C) il BACK-END fornisce SOLO servizi RESTFul (la versione LITE di SOAP)
D) per le sue necessita' il FRONT-END interroga il BACK-END SOLO mediante i suddetti servizi
E) NON MESCOLI ASSOLUTAMENTE IN NESSUN MODO i due mondi, excludendo il fatto che i sorgenti del frontend devono essere forniti dal web server. In altri termini, NON E' il BACK-END a decidere la struttura della pagina! NON E' il BACK-END a generate l'HTML della pagina! Il BACK-END NON HA NULLA A CHE FARE con l'HTML!
Esempio di SPA veramente carina:
https://www.flightradar24.co
Sembra incredibile, MA tutta l'applicazione e' realizzata come una SPA e interroga, una volta al secondo, il loro server per l'aggironamento della posizione degli aerei. Con unpo' di pazienza e di sniffer, puoi scoprire come e' fatta la comunicazione