Functions in Rust are declared with `fn` and can take parameters, return values, and include type annotations. They support expressions, recursion, and closures. The `main` function is the program's entry point. Functions promote modularity, reusability, and type safety in Rust programs.