Too Long; Didn't Read
The shell and the terminal are different from each other but are often used interchangeably. The shell is a program that takes commands from the keyboard and gives them to the kernel to perform. It acts as an interface between the user and the kernel. When using a Graphical User Interface, you need software that can interact with the shell and pass commands that the kernel can execute. This program is called an emulator because it emulates the shell environment for you on your desktop interface.