CSS stands of Cascading Style Sheet. It is used to customized the looks of classes and ids. It cannot control the content of the page.
HTML controls the contents of the page and a bit of how it is lay out.
HTML has a bit of customizing options, but CSS does most of the job.
XHTML isn't replacement to HTML. XHTML is the standard based on XML, but HTML is still not dead. (e.g. HTML5 is in development). Any developers makes our sites in HTML, important is in my opinion, wheter the site is valid and efficient. (sites should have been functional without image support in browser, in console browsers (links, lynx) and too for blind persons with readers. This is for me very important, therefore I'm building valid sites in XHTML Strict. That's no Dreamweaver, that's heavy work.) :)
html stands for hypertext markup language, whereas css stand for cascading style sheet. css reduce your work load and code size.
lets see how it reduce you work load. lets take an example you create a website of 10 pages. each page contains heading content, text etc. you give red color to your heading on every page. but now your client ask you to change red heading into blue. if you assign red color on every page then u have to change in every page.
but if you assign this using css then this will be work of few seconds means you just have to change red into blue only at one place.....
the only thing is you have to attach your css to ur html and you can control your any tag from here then it can be text color, size, style or border to table or image anything u like....