shell
A shell is the program that reads the commands you type and runs them. When you open a terminal and see a blinking prompt, that prompt is the shell waiting for you to tell it what to do — list these files, copy that one, start this server.
It's called a shell because it's the outer layer wrapped around the operating system's core: you talk to the shell, and the shell asks the kernel to do the actual work. Common ones are bash and zsh (the default on modern Macs); they look almost identical and do the same job.
A shell is more than a command-runner — it's a little programming language. You can save a series of commands in a script, use variables and loops, and pipe one command's output straight into the next. That's where a lot of a developer's day-to-day power comes from.
$ echo $SHELL /bin/zsh
Ask the shell which shell you're running — the prompt itself answers.
Don't confuse the shell with the terminal: the terminal is the window, the shell is the program running inside it. The window is the glass; the shell is the voice on the other side.