By Jiminy, the guesswork posters are out in force - suggestion -- if'n you don't know the answer please don't fake it just for the sake of posting. Either do your research first, or wait and learn.
This is an omnibus answer.
1) All intel Macs support Dual Channel memory access if matching modules are installed. The customary estimate is that this gives a 6% - 8% real world performance benefit
2) All intel Macs will run with mismatched RAM, at the loss of the Dual Channel speedup. This means
3) All Core2Duo (and Core2Extreme) Macs can run a 3 Gb configuration (1 Gb + 2 Gb) which on average can be faster than a 2 Gb matched pair if you are using heavy programs like Photoshop that can benefit from the extra 1 Gg.
4) All Corexxx Macs use the same DDR2-667 (PC2-5300) SODIMMs. Therefore, choosing MacBook Pro RAM for the new iMacs is correct.
5)They do not benefit from 800 MHz SODIMMs. This is a hardware limitation of the memory controller on the motherboard.
6) Core2Duo Santa Rosa machines, (MBP and the new iMacs) can recognize a full 4 Gb of RAM.
Core2Duo machines can recognize a potential 3.3 Gb (with 2 x 2 Gb installed... the top 700 Mb is wasted),
CoreDuo machines max out at 2.0 Gb.
Again, this is a hardware memory controller limitation of each chipset.
7) 4 Gb SODIMMs (if you could find any) will not work in any Mac to date.
8) Points 5) 6) and 7) will NOT be altered by a future OS or firmware update.
The most-recommended USA sellers on MR are
Data Memory Systems,
OWC (MacSales) and Crucial (use the link at the top of the page)
As mentioned, the Kingston KTA-MBP667xxx series are good too. Look for a reputable seller with good shipping and return policies (no shipping or restocking charges on DOA RAM, for example), and good customer service.
Installing third party RAM is fine with Apple and does not void a warranty. Instructions for D.I.Y. installation are on the Apple Support site.