Lambda expressions allow code to be passed as data in Java 8. The talk discusses myths and mistakes around lambda expressions, providing an introduction and examples. It emphasizes that syntax is less important than functional thinking and addresses common issues like debugging, testing and compiler errors. Functional thinking focuses on inputs and outputs rather than steps and requires practice to learn.