The core difference
English packs a lot into the single word for, and Spanish splits the job in two. por names the reason or circumstance, para names the goal, the purpose or the recipient. Four set phrases are enough to start with.
Same words, different meaning
Lo hago por ti.
I'm doing it for your sake. (reason)
Este regalo es para ti.
This present is for you. (recipient)
Por — the circumstance
por la mañana (time of day)
English says in the morning, but Spanish uses por.
Trabajo por la mañana.
I work in the morning.
Estudio por la tarde.
I study in the afternoon.
por favor (please)
Un café, por favor.
A coffee, please.
¿Me ayudas, por favor?
Can you help me, please?
Para — the goal
para ti (recipient)
Tengo una sorpresa para ti.
I have a surprise for you.
Compré flores para mi madre.
I bought flowers for my mother.
para comer (purpose, with an infinitive)
After para comes the plain infinitive, never an -ing form: para comer, not para comiendo. It covers English to eat, in order to eat and for eating.
Quiero algo para comer.
I'd like something to eat.
Estudio español para viajar.
I'm learning Spanish in order to travel.