You want me to write something that will take about 10 minutes to read?... Does that database support that!?.
... Anyway, for this, you need to understand a few things - in particularly the basics of HTTP protocol and DNS.
Each of these steps is omitting various information as there is just so much I can say, so I will just do the basics - but if you want to know anything in particular, please say and I will try to edit it in.
First things first when you type the address, the browser sets off a DNS query for the address. (This will do a usual lookup - cache, hostfile then server.)
Next, the dns returns the answer and your browser sends of a http request to the ip address of the server, with the host header of the address you are trying to reach and various other headers and information.
The server typically responds with a text stream and your browser displays it.
A good tool to use for diagnosing and experimenting is fetch(on Linux) and WFetch (on Windows).
Alternatively, If you have telnet available (Windows Vista, 2008 and 7 need you to select it) you can do a mock up of a few of the stages by typing the following at the command prompt (or terminal in Linux).
telnet google.com 80
GET /