$L$-functions are analytical objects containing meaningful information for the underlying context in which they are defined. For example, take the Riemann zeta function; since it can be written in terms of primes, it will encode arithmetical information of $\mathbb Z$. Also, the proof of the prime number theorem was possible thanks to the nice properties of $L$-functions. In this talk we will take a quick tour through different $L$-functions appearing in mathematics. We will point out some features they have in common, and finally we will arrive to an approach of what an $L$-function should be (in a broad context).