And with this a hugely complex issue of ports pushes forth...

TCP and UDP are different protocols. If you try to connect to a service/daemon that is listening for the UDP protocol on a certain port, you have to use the UDP protocol to connect to that service/daemon's port or that service/daemon won't accept the connection. I don't know for sure how it works, but you can have a port be listened for both UDP and TCP/IP protocols. Windows listens for both protocols on port 445 by default. So by that, I guess that a single port can be both, or listen for both protocols. This listening on both isn't always done, ie., you won't find a web server listening for port 80 UDP. I'll explain below.

TCP/IP and UDP have different uses, and that is a complete other topic in itself. Simply put, TCP/IP is what you will be browsing the Internet with, since it makes sure that the two computers exchanged the data they meant to, and in the right order. This makes it slow, but accurate. UDP on the other hand is usually used by online games where speed counts. It doesn't gurantee that the two computers got the data, or even in the right order, but since it doesn't make these checks it goes as fast as possible. So when you are playing a FPS Game, and suddenly the guy you are about to blow up kills you after momentary lag, you can thank UDP and all of the routers between you and the person who killed you. When you web page loads up slowly on your Broadband Internet connection, thank TCP/IP and those same routers, but be glad that your page will probably eventually load after the server realizes you didn't get that last part of a web page...


/me currently "thanks" TCP/IP and HTTP/1.1 for a terriable 'net connection.