* Carnegie Mellon
* Berkley
* MIT
* Stanford
* UIUC
* Wisconsin
If someone thinks s/he can get into Columbia or Brown, s/he has a shot at any of these.
I'm bias, but I'll tell you a bit about UIUC. We've got something called work life balance (pretty much every party scene imaginable: frat, hacker, LGBT, sober, etc). We're also a top five CS program, ranked as the #1 most wired college by PC Magazine (2008), and ranked a top 25 program for entrepreneurship education by Entrepreneur magazine. Feel free to pass my email along (in my profile) to whoever is applying to college. I've given advice to several HNers on what it's like to study CS at UIUC.
Of course, you have to get over the fact that you're in central Illinois.
EDIT: A few words about large versus small CS departments. Small CS departments tend to be much more traditional and suffer from a severe lack of systems. This means they usually are heavy on the theory and things like security and web application programing are limited or nonexistent. Large CS departments have more money, more professors, and more to offer in terms of subject area. Make sure you look at the course catalog from the last several years for each place.