I'm not real clear what the difference is between a normal and height map is. You say I can use a height map with a normal map to provide more realism, but can a height map be used by itself? When would I use one or the other or both?
You can use either separately or together. Heightmaps mimic geometry and as seen in the video can be great for creating more "depth". Normal maps are often used to mimic smaller details like skin wrinkles or impacted text.
In fact, from what I know, is that height maps are used by geometry shaders which output deformed mesh on the viewport (=your graphics card output).
Normal maps are used for the computation of light rays being reflected on surfaces which leaves the actual geometry mesh unchanged. However, encoding some extreme angles in the normal maps allows the lighting computation to produce "fake" bumpiness on a material. Did you ever look very closely on a bump map surfaces in some games and then rotated the view to the side? Then you'll discover the surface is actually still flat, but just overlayed with dark parts that mimic bump structures.