Should is a modal verb that has more than one meaning. The obvious meaning is that we use to give advice (eg. You should quit smoking), but it could also mean that you expect something to happen in the future
eg. John called and told me he's on his way. He should be here soon.
The past tense of should is should have + past participle.
Had better is similar, but it's used for more urgent advice with bad consequences if you don't follow it (eg. You had better quit smoking or you'll die).
Lesson by Sebastian, teacher at EC Cape Town English School
Now decide which form is needed in these 8 sentences: