A web application lives as long as active sessions and its web form live barely for a moment. The life of web page begins when user navigate to the that url in the browser and it triggers IIS to execute dll file in response. this executable creates instance of the web form and generates HTML format to respond to the request and post response to the browser.It then immediatly destroys the web form instance. When User clicks buttons or other server control which generates Postback events like Selecting values from combobox clicking server button etc, a request is again sent back to server and IIS executes DLL-->web Form instance is created and specific control event is executed. Data is sent back client in HTML format and web form is destroyed immediately. Event generated: Page_Load Server control events(e.g Button_click) Page_unload Check MSDN for More.
c# is more type safe than vb.
vb is event driven programming model where as c# is complete object oriented language.
c# supports indexers where as vb doesnt support indexers.
c# is developed taking java as reference.
these r the few differences i can brief.