A programming language is a formal language used to write instructions for computers. Languages vary in abstraction, paradigms, and use cases. Choosing the right language affects productivity and performance. Example: Python for scripting and C++ for systems programming.