In short: XML: Is a general-purpose markup language. It allows its users to define their own tags. With strict syntax rules. Example: Each opening tag need the oposite closing tag. HTML: Is a markup language for web pages with defined tags. Their syntax is not so strict. XHTML: Is a HTML page coded using the XML syntax.