We are often asked about requirements or recommendations regarding hardware and software for CS students.
We don't have any special requirements from either the department or university. However, within our department the lab machines run Windows, so the safest choice is a windows laptop. We do have students and faculty with Mac or Linux machines, but these usually require a little extra time and skill to configure correctly.
The software we use is primarily freely available; for example, BlueJ (bluej.org) and Eclipse (eclipse.org). There are some more specialized programs that are available on campus machines in public locations such as labs (one in our building), dorms, library; for example, Microsoft Visual Studio. These are used infrequently. And, many students don't have a laptop so we are prepared to accommodate most situations.
The campus technical help personnel are familiar with PC and Mac machines in case there was ever a need for any type of repair or assistance. The University Bookstore has a computer shop and is an authorized Apple dealer so peripherals are available. The University has a special state contract agreement with Dell so there are lots of Dell machines around and experience with them is probably higher than other PC brands.
Of course, additional memory and disk storage are always a consideration in new purchases since they make machines work faster and become outdated much more slowly. (Also, of course, expanding memory later is easy but expanding disk is not.)
Last thoughts are about weight, battery, and size. Many students get tired of lugging around heavy laptops and so they don't. They aren't required typically on a day-to-day basis and so it's easy to convince oneself to not carry it. To alleviate weight some students use netbooks, but these are not "full size" screens or keyboards and can sometimes become impractical for CS uses. Battery life is important because outlets in classrooms, hallways, etc. are very limited.
We hope this information is helpful.