ServletConfig is an interface that provides configuration info to the Servlet class. The config info will be defined for a servlet in the web.xml file. When the servlet is initialized the web container will create an instance of the ServletConfig and pass the reference to the init method of servlet.
ServletContext - Defines a set of methods that a servlet uses to communicate with its servlet container. There will one instance of ServletContext/webapp/JVM. The i/f has methods for logging, storing data which will be shared among servlets.
HttpSession - Class to store info which is available across client requests. A session represents a series of requests from the same client. Info could be stored until the client logs out or when the time out occurs.