What are the best undergraduate colleges for science in general?

Assuming you’re an above-average student, first start with your own state flagship. Chances are, that is the school to beat for the best bang-for-buck in many fields.

If your qualifications are exceptional and your family is somewhere in the low to middle income range, a very selective private school may offer a lower net price than your state flagship. Use the online net price calculators to compare. These schools would include most private research universities, plus many of the “national liberal arts colleges”, in the US News top N, where N=30 or so in each category. A few of those research universities (like UChicago and Georgetown), and most of the LACs, will have only limited (or no) engineering programs, but otherwise decent-to-excellent science and math programs. Especially if you want engineering programs and your qualifications are truly exceptional, check out Stanford, MIT, Caltech, and Harvey Mudd. Cornell, Johns Hopkins, and Washington U in St. Louis also have strong STEM programs. So do many others, but you might start with those just to get some idea about net prices.

Schools a notch down in selectivity, but more likely to offer significant competitive merit scholarships, include Case Western, Rensselaer, and the University of Rochester.

If your family income is too high for need-based aid but you need a lower sticker price than most top private schools charge, then check out some of the “public Ivies” such as UC Berkeley or UCLA. Some of them (UVa, UNC-CH, Michigan) may offer enough n-b aid to OOS students to make them competitive on cost for low to middle income families as well. State schools a notch down in selectivity (and OOS sticker price) include Wisconsin-Madison and Colorado-Boulder (which both feature very attractive college towns as well as some good STEM programs).