Angular directives allow you to attach behaviors to DOM elements. There are three types of directives: component directives which have templates, structural directives which change layout by adding/removing elements, and attribute directives which change appearance/behavior. Built-in directives include NgClass for class binding, NgStyle for style binding, NgIf for removing elements, NgSwitch for conditional display, and NgFor for repeating elements from arrays.