¿Por qué usar las clases o los IDs en los elementos HTML?

El lector Nicolás escribió:

Veo con frecuencia las especificaciones “id” y “class” para los elementos y . Tengo la curiosidad de ¿por qué se debe hacerse así? Si los elementos son únicos para cualquier de esos elementos, entonces ¿por qué no se especifica el body o HTML en el CSS?