Context-free grammars (CFGs) generate languages via productions; pushdown automata (PDAs) recognize the same class using a stack. Normal forms and parsing algorithms enable efficient recognition and syntax analysis.