A linked list is a fundamental data structure in computer science. Unlike arrays, linked lists don't store elements in contiguous memory locations. Instead, each element called a node contains data and a reference to the next node. This structure allows for dynamic memory allocation and efficient insertion and deletion operations.