Website:
1. Try to imagine a scale with quality and imagine a complimentary scale of knowledge. How much knowledge is required depends on what kind of quality you want. It is possible to create a site with no "behind the scenes" knowledge at all. Certain freehosting sites offer software that allows you to set up and design how you want your site to look and act without typing a single html-tag. Your site will, however, reflect the effort you put into it and very few sites created with such tools will come across looking better than what you'd expect from a 12 year making a site about their pet.
If you want to create a site that looks decent, clean cut and doesn't have any visual or functional bugs, you need to put in the time to learn and understand html and css. Both are easy to learn and there are plenty of resource sites available to teach you. I personally prefer the site
Lissa Explains - yes it's a site designed to teach kids html and css, but I think that is why it is such a great teacher, because it takes the time to cover the basics first.
2. To get your own domain name you need to pay for it, simple as that. People who have the knowledge and the equipment just buy the domain name itself, host the actual site themselves and pay the yearly domain fee, but most people, myself included are signed up with some kind of webhosting plan as well (which is much simpler as it doesn't require you to keep a computer online at all times to keep the site available). It's a simple process, really, as getting the domain name is part of the process of signing up for a webhosting plan. There's a huge variety of hosts with different prices and services, so it all comes down to what you need and how much you're willing to pay for it.
3. Never created my own server, so cannot answer any questions there, however, in terms of host, you could try to reserach how "secure" the hosts are. I have my own domain at dreamhost and have experienced the site being hacked (the dreamhost server was hacked, my site wasn't specifically targeted), they "cleaned it up" themselves, however they had been a bit overzealous on a few pages and removed more than just the hacker's code, which left me with a forum that wasn't functioning properly. Thankfully with a couple of hours work I managed to identify the files and locate the code that was missing, but someone who had absolutely no knowledge of what's what would have been left struggling. So try to google any prospective webhost's name and see if there are any known issues with them.
Forum (skipping explaining free forum hosting as you have already expressed a dislike for some of the best services for that already):
1. If you're thinking of creating one from scratch - then a lot. If you're more thinking of installing a forum software on your site, then you just need to understand what it does and how to follow its instructions. Different forum software have different requirements for a host, most of them require that the host site has a database service (like mySQL) and that the host supports the forum's chosen programming language (like PHP for instance). Installing a forum software usually involves the following: setting up a database for the forum to use, uploading the software through FTP to your webhost and CMOD-ing some files in order for the forum to set itself up properly. For a complete newbie this can seem daunting and confusing, but if you're an intuitive person who can follow instructions it's not too hard. Once it's installed, you will primarily be using the admin panel to set up, organize and run the forum itself.
2. The really big forums out there (like phpB
come with thousands of possible design templates to use, if you're willing to take the time to look through what's out there you can usually locate a template with a design that appeals to you and then switch out the main images to make the forum look more like your own.
3. Forum software is simply a collection of folders and files that make up a forum (from hundreds to thousands of files depending on the forum's complexity). You generally aquire it at the creator's site (like
PhpBB), download it as a zip-file, then unpack it and upload its content to your own domain. There's usually some sort of txt-file which instructs you on how to properly install it, this generally means CMOD-ing a couple of files/folders, opening the install-page on your domain and follow its instructions, setting up the mysql-service for your site for the forum to use and after the install is complete, remove/rename the installation files.
If you have any questions, feel free to ask