What purpose was the Von Neumann machine intended for? And what hardware limitations existed when von Neumann invented it?
The von Neumann architecture was built for sequential computing. It was groundbreaking because it combined the instructions in memory along with the data for the instructions in the same space. Before this, programming required rewiring because each machine was built with a specific purpose in mind.

The essential idea is abstraction on some level. The people who design the actual machines don't need to concern themselves with what software will be written for the machine. Rather, they make a few basic commands extremely efficient. The software teams then efficiently use these commands, allowing a generalizable/abstractable computer model.