A dictionary is a data structure that stores data as key-value pairs. It allows fast lookup, addition, and removal of key-value pairs and is very useful for storing data that maps keys to values. Dictionaries are implemented using hash tables under the hood for fast lookup of key-value pairs.