XML can handle <img /> but not <img> followed by tagsoup (like HTML handles).
Empty tags in XML are not implicitly closed. They require the explicit /.
That is one, but not the only thing. Non-xml html is just generally more forgiving.
If you make a mistake and use incorrect syntax in html, the browser will do its best to recover. In xhtml, it would just completely fail. Which approach is better is debatable.
One thing I can think of is tag names being upper case in HTML and lower case in XHTML in the DOM.