Tokens are the basic building blocks of C language that are combined to write C programs. There are six types of tokens: keywords, identifiers, constants, strings, special symbols, and operators. A C program consists of various tokens, where a token can be a keyword, identifier, constant, string literal, special symbol, or operator. For example, the statement "printf("welcome here\n");" contains five tokens - printf, (, "welcome here\n", ), and ;.