Functions in C allow programmers to organize code into self-contained blocks that perform specific tasks. A function is defined with a name and can accept parameters. The main() function is where program execution begins. Several examples are provided that demonstrate defining and calling functions to perform tasks like addition, incrementing values, and displaying output. Functions can access variables in their own scope as well as variables passed into them as parameters.