A cryptocurrency wallet is a piece of software that generates a pair of cryptographic keys that are fully random. Individuals can use these keys to send and receive Bitcoin (and other cryptocurrencies).
However, the name "wallet" is a little deceptive. A cryptocurrency wallet, unlike a physical wallet, does not keep any funds. Only the blockchain of the cryptocurrency for which the wallet was built is communicated with by the application.