The main thing LaTeX is good for is making slightly nicer documents, particularly for academic purposes. The formatting engine is top notch. It sees a lot of use in academics from computer science (it was created by Don Knuth, after all) to math (the equation formatting is excellent), physics and more.
And yeah, hard to use. Like I said, you're not going to go to the trouble for a one-off. No way that's worth it.
It's also used in a variety of places for scripted input, like, I recall there's a train line in Germany or Switzerland or something that prints their time sheets this way? Super easy to just plop in the new values, run the tool and there you go, fresh time sheets, looking great as ever. The easiest modern alternative would probably be something like a dynamic webpage, so, you need a database and server, and formatting is limited to whatever the browser can render. So, you can crank away with polishing the CSS, and adding whatever compatibility shims (polyfills) are needed to support whatever older browsers you need to support, and the whole thing takes several seconds to serve to the user, and they must have a browser and internet connection; whereas the PDF output is just, you can share that however you like, pretty much everything has a compliant PDF viewer these days (granted, pretty much everything has a capable browser too

). And by then, unless you're already a web design expert, or pay for tools (or a contractor) to set up all this for you -- you're probably in as deep as learning LaTeX for the job in the first place. So, it's maybe not a bad choice in that case.
But, there are still simpler ways to generate PDF, that might not look much worse if you're willing to compromise on that a bit.
Keep in mind -- what any open source advocate really means, when they encourage something: it's rewarding for its own sake, for the challenge of figuring out and mastering it. Any practical application is merely a convenient byproduct.
If you see yourself writing many documents in the future, and want to get output a cut above the rest, I might suggest it -- but definitely don't dive in for a one-off, learn it in your free time (if you have any!). Eventually, get comfortable enough to use it for simple documents (paragraphs, headings, lists, some figures), stick to others for the complicated stuff (multifigures, tables, side bars, weird columns, etc.). In time you'll figure those out too.
Point of reference: there are some things LaTeX is just
really bad at. Wrap figures is one example (inline figure with text flowed/wrapped around beside it). They're never placed quite right, you have to specify how tall they are, sometimes they run off the page, other weirdness... Maybe there's a newer package to handle that, I haven't checked in forever, but it's little bothers like that that are par for the course in noncommercial projects like this. Tables... aren't bad, but they're a bit bothersome to set up: lots of commands and alignment symbols needed to build them. HTML tables are a little bit easier to edit I'd say, but they're both very far from just tossing everything in Excel. (There are a few importer tools to convert Excel or HTML tables to LaTeX with not too much editing needed afterwards. But if the mere necessity for such tools makes you wonder -- well, see above, eh?)
I honestly don't know much about XML in regards to documentation, though you can use the standard elements as you would with HTML; or, maybe that makes it XHTML, I don't recall. (HTML is a loosely structured ML, whereas X is strict: HTML permits e.g. standalone
<p> tags, whose enclosing scope persists until the next block-level tag, or the end of the parent tag. XML requires strict closure, even on singleton tags, hence the shorthand e.g.
. XHTML I think is all the standard HTML tags but with strict XML structure enforced?)
The main(?) use for XML is as a structured container format: tag names don't matter, as long as they're opened and closed consistently (the structure is valid XML). Such a document won't view as anything in particular in a browser, but it can be parsed into a data structure for ready use in any high level language. They're quite popular for storing configuration data, serialized objects, etc. And yeah, can be nice for embedded, though the structured plain text formatting is rather wasteful, and XML is a bit complex to parse, so you'd avoid using it for the simplest platforms; but like, anything that can run Linux, it's fine.
Or, I don't know about serialization; JSON might perhaps be more popular? Probably it depends on the domain, with JSON being more web-centric, because JS, and XML is just wherever. There's lots of domain-specific formats and languages, YMMV.
Tim