[Indicative Tenses] -- [Simple Present] [Preterit] [Imperfect] [Future] [Conditional]
[Perfect Tenses] -- [Present Perfect] [Pluperfect] [Future Perfect Tenses] [Conditional Perfect] [Other Perfect Tenses]
[Progressive Tenses] -- [Present Progressive] [Imprefect Progressive] [Future Progressive Tenses] [Other Progressive Tenses]
[Subjunctive Tenses] -- [Present Subjunctive] [Imperfect Subjunctive] [Present Perfect Subjunctive] [Pluperfect Subjunctive] [Other Subjunctive] [Imperative]
[Duscussing the Past] [Discussing the Present] [Discussing the Future] [Hypothesizing]
[Summary of Modes] [Correspondence between tenses in English and Spanish]

Discussing the Past (summary)
1. To discuss events in the past, use preterit or imperfect. Make sure to check the difference between imperfect and preterit.
2. To talk about somebody else's past actions, use  expressions of influence/emotion... + present perfect subjunctive, imperfect subjunctive, or pluperefect subjunctive.
3. To talk about actions that were pending at a point in the past and things that may have or not existed, use imperfect subjunctive.
4. To hypothesize about the past, use 3rd type: si + pluperefect subjunctive.
5. To talk about a past action that preceeded another past action, use plueperfect.
6. To answer question Have you ever? or to refer to past events with relevance to the present, use present perfect.

Discussing the Present (summary)
1. To talk about habitual present actions, events or states, use present indicative. To discuss actions in progress, use present progressive.
2. To talk about somebody else's present actions, use expressions of influence/emotion... + present subjunctive or imperative.
3. To talk about things that may have or not existed, use present subjunctive.
4. To hypothesize (contrary to the fact), use 2nd type: si + imperfect subjunctive or conditional.

Discussing the Future (summary)
1. To speak about a future action use present indicative, futuro popular (ir a + verb) or future tense.
2. To express influence, talk about somebody's future actions use expressions of influence/emotion... + present subjunctive.
3. To talk about the actions that are pending use present subjunctive.
4. To hypothesize about the future, use 1st type: si + present indicative, futuro popular (ir a + verb) or infinitive.
5. To talk about something that will have happened by certain time, use future perfect.

3 types of hypothesizing. Structures in Spanish are very similar to those in English:
1. Hypothetical situtaions in the future and the present:
Si + present indicative
the present indicative
a future tense
Si llueve, 
no salgo
saldré/voy a salir/estaré saliendo
no salgas!
If it rains (it may or may not),
I don't go out
will not go out/am not going out
don't go out!
2. Hypothetical situtaions in the future and the present that are contrary to fact or very unlikely:
Si + imperfect subjunctive
Si lloviera,
no saldría.
If it rained (it does not),
I would not go out.
3. Hypothetical situtaions in the past that are contrary to fact:
Si + pluperfect subjunctive
conditional perfect
Si hubiera llovido,
no habría salido.
If it had rained (it did not),
I would not have gone out.

Preterit vs Imperfect:
Preterit -- beginning or end of a past action
Imperfect --habitual action in the past.
El partido de fútbol  empezó a la una. 
Terminó a las cuatro.
Había un partido todos los sábados.
Preterit -- completed action.
Imperfect -- what was happening when another action 
interrupted it.
El partido duró tres horas.
Estaba en la cocina cuando terminó.
Preterit -- series of comppleted actions.
Imperfect -- give background detials 
(time, location, weather, age ...)
Los jugadores corrieron, saltaron y gritaron.
Llovía un poco durante el partido.
Preterit -- ayer, anteayer, anoche, un vez, dos veces, 
el año pasado, el lunes pasado, de repente
Imperfect -- todos los días, todos los lunes, siempre, frecuantemente, 
mientras, de niño/a, de joven.
These words are often associated with corresponding tenses.
But not necessarily!!!
Ayer cenamos temprano.
Ayer cenábamos cuando Juan llamó.
De niño jugaba el fútbol.
De niño empezó a jugar al fútbol.
Preterit of some verbs has English equivalents different 
from the infinitives. Their English equivalents 
in imperfect do not differ from the infinitives.
Preterit and imperfect are often used together in the same sentence.
1. Imperfect tells what was happening when another action 
(preterite) broke its continuity. 
2. Preterite reports the action which took place because of 
a condition described by imperfect.
Miguel estudiaba cuando sonó el télefono.
Olivia comió tanto porque tenía mucha hambre.
Preterit and imperfect are often used together 
when presenting an event. Imperfect is used to 
set the stage, describe conditions that caused actions, 
or to emphasize their conitnuing nature, 
while preterit just narrates actions.

Overall, imperfect combines two constructions from English: past progressive and would/used to
while preterite corresponds to simple past.

These are tenses that you do need to know. There are more (in theory) and those are listed below.
Modo Indicativo
Presente Perfecto/Antepresente
he hablado
había hablado
Condicional Perfecto/Antepospretérito
habría hablado
Modo Subjuntivo
Presente de Subjuntivo
Subjuntivo Pasado/Imperfecto
Antepresente/Presento Perfecto de Subjuntivo
haya hablado
Antepretérito/Pluscuamperfecto de Subjuntivo
hubiera/hubiese hablado

Correspondence between Tenses in English and Spanish
English Tenses
Past Present Future Future in the Past
I spoke
I speak
I will speak
I would speak
I had spoken
I have spoken
Present Perfect/
Acabar de
I will have spoken
Future Perfect
I would have spoken
Perfect Conditional
I was speaking
Imperfect (Preterit Progressive)
I am speaking
Present Progressive Future Popular
I will be speaking
Future Progressive
I would be speaking
Conditional Progressive
Perfect Continuos
I had been speaking
Pluscuamperfect Progressive
I have been speaking
 Present Perfect Progressive
I will have been speaking
Future Perfect Progressive
I would have been speaking
Perfect Conditional Progressive
Spanish Indicative
Preterite Imperfecto Presento Futuro Condicional
yo hable
Past Indefinite
yo hablaba
Past Conitnuous/
I used to,would
yo hablo
Present Indefinite
yo hablaré
yo hablaría
Future in the Past
yo hube hablado
 no clear correspondence
does not exist
yo he hablado
Present Perfect
yo habré hablado
Future Perfect
yo habría hablado
Future in the Past Perfect
yo estuve hablando
Past Conitnuous (very rare)
yo estaba hablando
Past Conitnuous
yo estoy hablando
Present Conitnuous
yo estaré hablando
Future Conitnuous
yo estaría hablando
Future in the Past Continuous
yo hube estado hablando
no clear correspondence
does not exist
yo he estado hablando
Present Perfect Conitnuous
yo habré estado hablando
Future Perfect Conitnuous
yo habría estado hablando
Future in the Past Perfect Conitnuous
Presento Futuro
yo hablara/hablase
yo hable
yo hablare
yo hubiera/hubiese hablado
yo haya hablado
yo hubiere hablado
yo estuviera hablando
yo esté hablando
yo estuviere hablando
Perfecto Progressivo
yo hubiera/hubiese estado hablando
yo haya estado hablando
yo hubiere estado hablando