Hey, I just finished undergrad at UVA. I interviewed at both and have been to Richmond on other occasions, so I'll try and give you what I can.
Charlottesville is your typical college town and students drive a lot of the business in the area. It's nominally a city, but definitely doesn't feel like one, especially in the area that the school itself is located (i.e. the more city-ish part of town is about a mile from the medical school). There is a reasonable amount of stuff to do within walking distance of the med school and grounds (UVA-speak for campus) but if you don't take some trips over to the downtown mall area, you're missing out on some good stuff. If you want to avoid undergrads, it's pretty easy because the med school is largely separated from the rest of the University. The nursing school is next door and so you'll see them as well as students whose classes happen to be held in their building. You'll also see biomedical engineering students (woo!) whose department is located next door to the med school.
Richmond is definitely a city and VCU is located right in the middle of it, although the MCV campus is a fair piece away from the rest of VCU. When I was there, I noticed a distinct lack of restaurants in the immediate vicinity, which my student interviewer verified. One thing that is immediately obvious is that VCU serves a poorer population (in fact, I think it has a program geared towards students interested in helping undeserved populations, but don't quote me on that).