A thread is an execution unit inside a process in the context of an operating system. Threads share the same memory and resources within a process, in contrast to processes, which are separate instances of programs with their own memory and resources. Through this sharing, threads can work on various portions of the same program at the same time, utilizing parallelism and increasing system performance.