There are a few things that you should know before you try to design your own website.
If you want to make a website which looks good you should know how to create good designs and should have a good color sense.
HTML means just the basic coding. Flash is used for animation(for animating images for slidesetc) .The newest trend is not flash.its jquery.
I don't think creating a good website is an easy task. It needs artistic skills as well as technical skills.
There are two types of websites static and dynamic.
The static websites usually contain html , some javascript flash etc. A dynamic website means a site that changes according to some user input.For eg ur email login. when you enter your email id and password it communicates with a server and logs you in.Creating Dynamic websites needs much more skill as they need you to know some scripting language thats used to create dynamic sites like PHP.
I think you wanted to make a simple static site that looks wonderful.
Then I think you will need these softwares.
Adobe Photoshop.or the open source GIMP.
Adobe Dreamweaver (Its easy to make a site using this)
Most websites contain a lot of images.. the background ,the banner and other components are usually images. What designers do usually is they make a design (as an image) in photoshop .
If you want to insert an animation, then that place is kept blank in the image . Then this design (image) is split into different pieces( the blank will not be taken) and then placed in the web page using HTML and CSS. CSS means cascadng style sheet. Its a set of rules for the various elements that we place in our web page.( like the positon of the elements, the color for background,the color of text etc.).
How well you can make this design and place it will determine how good your site will be.
You can also buy images you want from stock photography sites if you like.
Then if you want menus or navigation then you should know how to make menus using one f the following
(you can make a menu using just HTML itself but that wont look very nice.)
CSS
Javascript or jquery
Flash(not recommended for menus as its difficult to make a change later. )
If you want to create small animations you cant do it in flash.You can also use javascript or jquery for image animation (slides) and others
for doing this much things. you must know atleast the following
HTML
Javacript
CSS
How to edit an image using an image editing tool like photoshop or gimp (atleast the basics)
For HTML and CSS I think you can refer
Griffiths - HTML Dog - Best-Practice Guide to XHTML and CSS .I think that ebook is available in 4shared.com for downloading.
The best way to learn how to create websites is to go to this site ..Everything you need to know is there ..
http://www.w3schools.com/
also check these sites
www.cssmania.com
http://www.designm.ag/news/lets-get-inspired-%E2%80%93-top-10-css-galleries-of-2010/
http://www.designm.ag/news/50-fresh-css-website-designs-showcase-roundup-for-inspiration/
http://www.dynamicdrive.com/
http://www.cssplay.co.uk/menus/
http://www.instantcsscode.com/
http://www.jqueryninja.blogspot.com/
http://spyrestudios.com/jquery-tutorials-plugins-impress-your-friends/