Si no te importa aprender en inglés, te recomiendo los Missing Manual, son una pasada.
En español también hay mucho material, aunque la calidad varia bastante dependiendo del sitio web. En mejorando.la hay bastante material (y en las webs de sus creadores, cristalab y maestrosdelweb).
Lo único "malo" es que en todas partes, o casi todas, no te enseñan HTML5 desde cero, sino que empiezan a decirte que tiene de diferente con HTML 4 y XHTML, las etiquetas que quedab obsoletas, las nuevas que se han añadido, etc.
Por tanto yo te recomiendo empezar con XHTML, con el manual de librosweb.es. Tampoco es un lenguaje que cueste mucho de aprender, en un par de días puedes tener casi todas las cosas claras. Después puede seguir con HTML5. Y lo mismo con CSS, primero CSS 2.1 y luego el 3.
Por cierto, de CSS hay un libro que se llama CSS3 Solution, que te empieza a enseñar desde lo más básico hasta lo más avanzado de forma práctica. Es decir, a medida que avanzas en el libro, vas haciendo los ejercicios que ahí te pone. Está todo el código explicado y bien hecho, pero está en inglés. Yo uso otro libro del mismo autor (PHP Solutions) para aprender PHP de forma práctica y en una semana he aprendido más que en un año de clase. Totalmente recomendables.