MongoDB indexing speeds up searches by creating sorted lists (B-trees) of fields. This avoids slow collection scans, enabling faster binary searches. While indexes improve reads, they increase storage and slow writes. Types include single-field, compound, multi-key, and text indexes. "Covered queries" are fastest, using only the index. MongoDB optimizes query performance by choosing "winning plans" and caching them.