Grundsätzlich stellt sich mal die Frage, ob du HTML lernen willst um eine Homepage zu bauen, oder ob du lieber das ganze auf einer Grafikoberfläche wie in einem Zeichenprogramm machen willst.

Wenn du echtes HTML programmieren willst, dann sind die Tips von Ghetto schon so ziemlich das beste für den Einstieg. Allerdings würde ich fast eher noch einen anderen Editor verwenden. Dreamweaver ist zwar nicht kostenlos, aber er bietet schöne Features auch beim HTML-Programmieren.

Ansonsten gibt es auch viele fertige Designs im Netz, die man verwenden kann, wenn man sich nicht selber die Arbeit machen will.

Was den Webspace angeht, ist die Sache auch recht einfach. Das beste ist, du fängst mal mit freiem Webspace an (siehe die Vorschläge der anderen) und wenn du dann genug experimentiert hast und dir einiger maßen sicher bist, was du machen möchtest, dann kannst du noch immer nach bezahltem Webspace schauen. Dann wäre auch die eigene Domain evtl. eine Alternative.

Zum hochladen gibt es unterschiedliche Möglichkeiten.
Zum einen bieten einige Webspace-Anbieter sogenannte Baukästen an, wo man seine Homepage gleich im Browser erstellt und dann nur noch auf dem Server speicher. Also sehr einfach.
Andere bieten wiederrum den Upload mit FTP-Clients an. D.h. du baust deine Homepage auf deinem Rechner und schiebst nacher die Daten per FTP-Client auf den Server. Dazu brauchst du dann Zugangsrechte für den Webspace den du dort hast.

Wenn du Fragen hast was HTML angeht, kannst du dich auch an mich wenden.