Hostnames or NetBIOS names were used to provide a friendlier means of identifying servers or workstations.
NetBIOS names is based on an older protocol and should be used within a LAN only and registers itself on that network everytime that PC is powered up or rebooted using LMHOSTS, broadcasts or WINS to provide resolution of a NetBIOS hostname to it’s IP address. Thet are limited to 16 characters in length with 15 characters visible. NetBIOS names cannot be used as part of a doamin. The underscore character “_” is only used in NetBIOS names.
Hostnames TCP/IP based are resolved either with a static HOSTS file on your PC or from a DNS service. They typically are used as part of a domain. The hostname uses “-” instead of “_” as most DNS will reject this character and can be up to 255 characters in length.
From Windows 2000 on you can disable NetBIOS and your network will be a lot quieter. I would recommend acquiring some basic TCP/IP books which also cover NetBIOS and experiment with your systems. You wil really need two PC’s minimal and some sort of sniffer tool to understand. You can read all you want, but until you play with these two protocols it won’t really click. The NetBIOS name cannot be readily distinguished from a hostname until you get a domain established. I have only glossed over this question and I am sure others will throw in probably better explanations.