English Grammar Exercises for B2 – Criticising past actions

1. Complete the speech bubbles. Use a verb from the box and each of these modal structures once: might have, needn’t have, should have and shouldn’t have.

eat      recharge      save      worry



Show answers

1) should have recharged   2) might have saved

3) needn’t have worried   3) shouldn’t have eaten

2. Complete the sentences with a modal in the past (should / might / could / needn’t have) and the verbs in brackets. Sometimes more than one answer is possible.

1) We got lost on the way. We turned left when we ____________ (turn) right.

2) I spent all morning looking for camera. You ____________ (tell) me that you’d borrowed it!

3) Thanks for the sandwich, but you ____________ (make) it. I had lunch in town.

4) Josh ____________ (let) me know that he wasn’t coming home. I cooked dinner for him.

5) You ____________ (buy) any milk. There’s lots in the fridge.

6) Dad had already filled the car with petrol, so Mum ____________ (get) any more.

Show answers

1) should have turned   2) might / should have told

3) needn’t / shouldn’t have made   4) should / might have let

5) needn’t / shouldn’t have bought   6 needn’t have got

3. Complete these third conditional sentences with the past perfect and would(n’t) have form of the verbs in the box. Sometimes you need to use a continuous form.

hear      last      leave      not be (x2)      not enjoy

not know      not send      not take      stop

1) If you ____________ me a text, I ____________ where you were.

2) I ____________ the party if I ____________ self.

3) If James ____________ the plane instead of the train, the journey ____________ a lot longer.

4) She ____________ so cross if you ____________ so spiteful.

5) If you ____________ talking, you ____________ what I said.

Show answers

1) hadn’t sent, wouldn’t have known

2) would have left, hadn’t been enjoying

3) hadn’t taken, would have lasted

4) wouldn’t have been, hadn’t been

5) had stopped, would have heard

4. Speculate about the past. Write third conditional sentences.

1) He wasn’t listening to the teacher so he didn’t know what to do.

     If he’d been listening to the teacher, he’d have known what to do.

2) The sun wasn’t shining so we didn’t go to the beach.


3) Harry was driving recklessly and was involved in a car crash.


4) Sam was short of money so he didn’t buy the jeans.


5) I ate the sandwich because I was hungry.


Show answers

2) If the sun had been shining, we’d have gone to the beach.

3) If Harry hadn’t been driving recklessly, he wouldn’t have been involved in a car crash.

4) If Sam hadn’t been short of money, he’d have bought the jeans.

5) I wouldn’t have eaten the sandwich if I hadn’t been hungry.


Speculate about past events in your life. Write third conditional sentences.

1) _________________

2) _________________

3) _________________

Advanced English Vocabulary - One Minute Videos on YouTube

Proceed to the list of Advanced English Vocabulary.