Los elementos <span> y <div> son elementos para agrupar contenido que no pueden ser descritos semánticamente por otro elemento. <span> es para elementos inline y <div> para elementos de bloque.
Ejemplo:
En ese caso encierro mi nombre en una etiqueta span, la cual puedo estilizar en forma diferente.
No es semántico encerrar párrafos en <div> o <span>. Para eso están los <p>.