I went to a public university in my state (NC) and a top 20 public CS grad school - so I can recommend them. I have also worked with a lot of folks from all the other top CS grad programs across the country.
The thing I have found that is different with the folks who went to undergrad at some of best schools, like MIT, is that they spent more time focused on their studies than I did. And I'm saying this having been top of my class in both undergrad and grad school. So I'm not sure if that says something about public schools, liberal arts, or the kinds of people who target MIT. Probably all of these. In any case, I think you can get the same level of education at public schools if you're willing to put in a lot of your personal time. If it turns out that you don't want to be so hard-nosed about it, then I think you'll find a lot of cool things to do at a public school.
The thing I have found that is different with the folks who went to undergrad at some of best schools, like MIT, is that they spent more time focused on their studies than I did. And I'm saying this having been top of my class in both undergrad and grad school. So I'm not sure if that says something about public schools, liberal arts, or the kinds of people who target MIT. Probably all of these. In any case, I think you can get the same level of education at public schools if you're willing to put in a lot of your personal time. If it turns out that you don't want to be so hard-nosed about it, then I think you'll find a lot of cool things to do at a public school.