haber
The invisible backbone of Spanish — auxiliary 'have' for perfect tenses AND the existence word 'hay'. Two completely different jobs, one verb.
haber (hay)
As 'hay' it means 'there is/are' — existence. It never changes for singular vs plural, which catches everyone out.
Hay un problema. / Hay muchos problemas.
There is a problem. / There are many problems.
Same word for singular and plural. 'Hay muchos' not 'han muchos.' Never agrees with the noun.
¿Hay algo de comer?
Is there anything to eat?
Hay for existence in questions. 'Está algo de comer' would mean the food is located somewhere — different.
Había mucha gente.
There were a lot of people.
Imperfect of haber for past existence. Again — singular form for plural noun. No exceptions.
haber (auxiliary)
Forms all perfect tenses — he comido, había llegado, habrá salido. Never replaced by tener in this role.
He comido ya.
I've already eaten.
Perfect tense — haber + past participle. Never 'tengo comido' in standard Spanish (it exists in some regions but avoid it).
Si hubiera sabido, no habría venido.
If I had known, I wouldn't have come.
Pluperfect subjunctive + conditional perfect. Both built from haber. Essential for hypotheticals.
Debe de haber algún error.
There must be some mistake.
Haber used in an infinitive clause after modal. 'Debe de haber' — not 'debe de hay.'
Tricky bit
'Hay' never changes: 'hay un libro' AND 'hay veinte libros.' This violates learners' instinct. And never confuse hay (existence) with está (location): 'hay una farmacia por aquí' (there's a pharmacy around here) vs 'la farmacia está en la esquina' (the pharmacy is on the corner).