When using the word cada, we think about separate, individual elements. On the contrary, when we say todo, we think about a mass of elements. Cada separates and todo unifies. In this way
Todos los hombres suggests all the peolpe on the planet as a mass without faces
Cada hombre refers to individuals, unique persons
Therefore, it is more natural to say:
Todos los hombres son iguales = All men are the same (NOT *Cada hombre es igual)
Cada hombre es único = Every man is unique (NOT *Todos los hombres son únicos)
Todo and cada are confused especially with time periods. In this case todo in singular indicates the complete duration:
Hoy trabajo todo el día = I work all day today (full day, from the morning till the evening)
Llevo trabajando toda la mañana
= I've been working all morning (the entire morning)
Todo in plural with time periods makes us think about a routine where the same things occur on a regular basis. These periods are perceived as a uniform mass. In the contrary, cada suggests that every period is unique and unrepeatable. That is why it often indicates a change, progress:
Todos los días son iguales = Every day is the same (INADEQUATE: *cada día es igual)
Cada día estás más guapa = Every day you are (getting) more beautiful = (INCORRECT *todos los días estás más guapa)
Cada vez más gente aprende lenguas extranjeras =
More and more people learn foreign languages (Yesterday few people, today more, tomorrow many people)
The difference between todos and cada can be clearly seen in the following example:
Todos los sábados como fuera =
Every Saturday I eat out (a routine, actions that are repeated without change),
pero cada sábado en un lugar diferente =
but every Saturday in a different place (there is a change)
Regarding the frequency of use, todos los días, todos los meses, todos los años... is used much more than cada día, cada mes, cada año. On the contrary, cada vez is used more than todas las veces.
Bear in mind that todo, todos are always used with the definite article, while cada, without an article.