Contexts are used in Dialogflow ES to manage the state of the conversation as well as to guide the conversation along different paths even if the user says the same phrase.

Dialogflow CX does not need/use contexts as it supports conversation state automatically

There are two kinds of contexts in Dialogflow ES – input context and output context.

You can add multiple input and output contexts into a single Dialogflow intent as you can see from the picture below.