Как известно, Windows – многозадачная операционная система, обеспечивающая одновременное выполнение многих приложений. Одновременность эта на самом деле кажущаяся. В один момент времени процессор все равно может выполнять только одну команду (для настоящей многозадачности нужны многопроцессорные системы). Просто процессор очень быстро переключается между запущенными в системе задачами, создавая иллюзию их одновременной работы. Подобное псевдоодновременное выполнение процессов известно как "операционная система с разделением времени" (time-sharing).
Для решения многих задач было бы удобно в рамках одного приложения запускать несколько процессов, работающих параллельно. Например, пока программа выполняет какие-то сложные и долгие расчеты в одном процессе, второй процесс, чтобы попусту не терять время, выполняет какие-либо действия с пользовательским интерфейсом (скажем, строит график). При этом надо понимать, что запуск дополнительных процессов снижает скорость работы основного процесса. В приведенном примере расчет будет выполняться медленнее, но это компенсируется выигрышем в общем времени работы.
Другой пример – программа тестирования знаний, которая дает студенту ограниченное время на выполнение тестов и по истечении этого времени выполняет какие-либо действия (обычно вывод сообщения "Зачета нет и не будет").
Наконец, параллельные процессы могут использоваться для изображения сложной анимации, когда надо одновременно перемещать несколько объектов.