I'll add some 'good':
- smaller class size for undergraduate level courses. You can expect 18 to 20 students in an undergraduate physics, chem, or biology class, where the same course in a 'big university' will have up to 150 in a large lecture hall.
- Accesibility of faculty (see above - you can email them, call them, stop by an office, or show up early for class and chat).
- Undergraduate classes AND labs with doctorate-level instructors. Community colleges don't have grad students to use as cheap slave labor, so the labs and all undergraduate science courses are usually taught by PhDs. (I.e., there are no 'recitation' or 'tutorial' courses taught by some disinsterested grad student who 'has' to be there to earn his tuition assitance.)
- In-state transferability: In spite of the difficulty of getting into a 'top university' as a transfer, most community colleges are tightly wed to their home state's university system. In Maryland, for instance, you can take an engioneering program with 100% guaranteed transferability of credits towards your degree (and U of Maryland is one of the top engineerring schools in the country).
- Reduced room/board: in addition to tuition savings, a community colege allows you to stay in an area where you often already have housing, familiarity with the area, and a job.
- Scholarships: Most scholarships (including ROTC) place a higher value on your grades in college than in high school, for deciding who gets how much. A Community College can be a good place to show yuo can succeed, get good grades, and work towards a scholarship at a state school.
Con:
- Social aspect: unless you go to a large commmunity college, you won't have the opportunity to meet as many people (especially internationals), or be involved in as many clubs, interests, sports, etc.
- Research: Very few undergrads get involved ni any research in their first two years of college, but there are virtually no research opportunites at a two-year institution (it is the nature of the type of service provided).