Generally, linguists would disagree with that - Cantonese is not mutually intelligible with Mandarin, so it's not a dialect, it's a different language, as are Wu, Hakka, etc... There are fairly profound differences between these languages in their spoken form. It is true that they all share a single written language, and a common language ancestry, but Cantonese (the spoken language) is at least as different from Mandarin (the spoken language) as Spanish and Portuguese, or Dutch and German.
I am not a linguist, per se, but my understanding is that there is no formal definition (or even agreement) on what constitutes a separate language versus a separate dialect. Rather, a number of factors are taken into consideration (including political factors), and the distinction is almost always debatable.
The common analogy is that Chinese "dialects" are really different languages in the same Chinese language family (they have a common ancestor), the same way that Spanish, Portuguese, Italian, Corsican, Catalan, etc. are different languages in the Romance language family (their common ancestor is Latin).
Where it gets confusing is when nationalism gets involved. Mandarin and Wu are different "dialects" of the same "language" because they're from the same country. Italian and Spanish are different "languages" because they're from different countries. It's a political distinction.
Linguists tend toward using mutual intelligibility as the difference between a language and a dialect, but it's fuzzy. Beijing and Shanghai dialect are almost totally mutually unintelligible, but if you walked from Beijing down to Shanghai, each village, town, or city you pass will speak a dialect that's still mutually intelligible with the immediately neighboring village/town/city's.
But really, the words "dialect" and "language" mean essentially the same thing in English.
Linguists tend toward using mutual intelligibility as the difference between a language and a dialect, but it's fuzzy. Beijing and Shanghai dialect are almost totally mutually unintelligible, but if you walked from Beijing down to Shanghai, each village, town, or city you pass will speak a dialect that's still mutually intelligible with the immediately neighboring village/town/city's.
So, its a "ring language" (by analogy to a "ring species" [1] in biology.)
Ok, then the linguists I read tend to be splitters rather than lumpers. =) This is particularly drama-prone in re: the Chinese languages/dialects due to the tendency for Beijing to attempt to cast all speakers of Chinese languages as in fact speakers of a single language, as part of their attempts to create a single unified Han identity.
But in the end, I really believe that if it weren't for the common written language, no one would ever think of Cantonese as being just a dialect of the same language as Mandarin - the differences between the two spoken languages are so massive.
It involves more than linguistic characteristics to distinguish language from dialect. One can argue for both cases.
I personally prefer to think of Chinese as a language family. It would be a much larger, and very interesting, topic. For the discussion on this thread, I use "dialect" other than "separate languages", since Cantonese, We Chinese, etc. are described as dialects in most materials I read.