Variables in C language are names that represent memory locations used to store and change data values during program execution. Variables must be named in a clear way and can consist of letters, digits, and underscores. They must begin with a letter and have a maximum length of 31 characters. Examples of valid variable names include "John" and "T_raise" while invalid names include "123" or names with spaces.