The word language has two rather distinct senses that should be kept apart, corresponding to French langue 'a particular language' and French langage 'human language, the ability to speak and understand speech'.
In the first sense, a language is defined as a system for face-to-face communication among humans that is used in everyday interaction and allows people to exchange their thoughts about any imaginable topic. The great majority of languages use the articulatory apparatus of the mouth, the acoustic medium, and the perceptual apparatus of the ear, but this is not part of the definition. Sign languages, which use manual and facial articulation and the visual channel, a languages in the full sense of the word, just like spoken languages. The great majority of languages are acquired by most of their speakers in early childhood (as "native languages", as misleading term because "native" suggests that speakers are born with it), in a seemingly effortless, or at least untaught way, as part of ordinary interaction with caretakers and older children. But languages can be acquired also through classroom teaching, and some languages are studied by more adolescent or adult learners than acquired "naturally" by children (e.g. Irish, Maori, Hawaiian, and perhaps English). There are also some languages that are exclusively (or almost exclusively) acquired in this way, among them classical languages such as Sanskrit or Latin, artificial languages such as Esperanto, and recently extinct emblematic languages, such as Cornish and Chinuk Wawa. These are also full languages by the definition above, and the way in which they are normally acquired could change, as it has in the case of Hebrew, which for centuries was acquired more like Sanskrit, but is now widely used as an everyday language and acquired in early childhood.
There are also many cases of "languages" that are not fully included by our definition, and there seems to be widespread agreement that these are not languages in the full sense of the term. "Animal languages" are not used among humans and are invariably quite restricted; nonhuman animals are not able to exchange information and views about any imaginable topic (at least not about any topic imaginable by humans). "Programming languages" are used only for communication with machines, and only for highly restricted contents. These are languages only in an improper, extended sense. Sometimes the terms "natural language" and "artificial language" are used, and animal languages would of course fall under the former, while programming languages would fall under the latter. But this division is not very useful for languages in the full sense. One might say about Esperanto that it is "artificial" because it was created by a single individual in very recent history (just as programming languages have a well known history), but it is a little odd to define a kind of language by the way it originated. We do not know how other languages originated, and it is possible (though admittedly unlikely) that other languages such as Basque or Japanese were also created in this way. What is crucial is how it is used, and Esperanto is used very much like other languages. The term "natural language" is also used by logicians and computer scientists for "language", to stress the contrast between the programming and formal languages with which they are centrally concerned.
Languages are generally opposed to dialects, which linguists define as speech forms that differ from each other, but not sufficiently to prevent mutual comprehensibility. This definition often conflicts with nontechnical usage. For example, Norwegian and Danish are generally considered two different languages, but they differ less from each other than the German dialects of Bavaria and the Rhineland (which are not really mutually intelligible). And whether a speech form is a dialect or just a subdialect is likewise often undecidable. Linguists use the term "lect" for any kind of speech form, from the most concrete idiolect (the speech form of a single person) to the most abstract language. Whether two lects are considered dialects of the same language or two different languages depends on what the speakers think, and linguists are not so rigid in applying their definitions that they would insist on talking about the "Norwegian-Danish" language (though sometimes the umbrella term "Continental Scandinavian" is used, including Swedish but exclusing Icelandic), on about the "Bavarian language".
"Language" in the second sense refers to the ability to use a language (in the first sense). In the second sense, the word is used without an article in English. This ability comprises several subsystems that all need to be in place: an articulatory system, an auditory system, a perceptual system, an inventory of words, and inventory of grammatical patterns, semantic knowledge, and pragmatic and social abilities. If any of these subsystems is lacking or not working properly, language use breaks down. Linguists have generally focused their attention on the inventory of words and the grammatical patterns, but they have tended to isolate these from the other interacting subsystems, thus often making it harder to understand how the entire system works and how the more external systems influence the more internal ones.
It is not obvious at first glance why different people should use different speech forms, i.e. different lects and different languages. Communication is such a basic human skill and need that it would seem to be more straightforward if all humans used the same speech form, just as all humans have the same body parts and bodily functions. However, the reason for this linguistic diversity evidently is that language as such is not innate. All the component systems are based on biological prerequisites that were mostly in place for a long time before language, and it was only fairly recently in human history that everything was brought together. At that time, human existence was already strongly dependent on cultural transmission of knowledge, and cultural transmission of language implies its mutability, and diversity if populations are isolated. The past few centuries have seen less and less isolation of populations, leading to a dramatic loss of linguistic diversity. This would mean that there would be no more need for the first sense of the term "language" (in nonhistorical contexts), because having language in the second sense would mean using the only language that exists.