Hmm, I thought that there was an article posted somewhere with some guidelines, but I can't find it right now.
For serving regular assignments, the requirements are not that significant. There are a couple of uses of WeBWorK which tend to eat up more resources (particularly memory). The biggest one would be using WeBWorK for quizzes where a large number of students start (or end) the quiz at the same time. The example would be a full computer lab of students starting the same WeBWorK quiz at the same time.
In general, if you are using WeBWorK for assignments, you could probably comfortably run a system with 8GB of RAM and a dual-core processor. This will easily handle hundreds of students writing assignments, and probably thousands with little difficulty. WeBWorK doesn't require a lot of disk space. Including OS, WeBWorK code and course data my whole system is under 30GB.
For the difference in cost I recommend 16GB of RAM and probably a quad-core processor. In my experience processor speed is not a huge factor. It is more about having multiple cores to serve multiple requests at once.
We have two servers each with 16GB of RAM, and we've had semesters with over 2000 students with no difficulties.
Perhaps others who have smaller servers can provide their experiences.