XHTML is a reformulation of HTML as an XML application which requires following more strict rules than HTML. The most important rules are including a DOCTYPE declaration, adding an xmlns attribute to <html>, closing all tags, using lowercase tags, specifying empty elements with a closing slash, quoting all attribute values, and always including attribute values. Common XHTML tags are used to define document structure and elements like paragraphs, headings, lists, links, images, and tables. Forms can also be created using tags like <form>, <input>, and <select>.