Yep, all user apps are stored in /data, as well as their associated data (and text messages, etc.). So if you're just upgrading a ROM, you don't have to wipe data. As for changing ROMs (you might want to look at Sleipnir for bone-stock, speed, and supreme battery life), you need to format /data in CWM or else the phone will get caught in a bootloop. The way around this is to wipe /data, flash the different ROM, and then reboot back into recovery and restore only /data from a Nandroid backup that you hopefully made just prior to the ROM flash and /data wipe, and then reboot the phone normally and you'll have your data and a new ROM, coexisting peacefully.
But, that's why, for a reflash or an update, you only need to format /system and /cache once, and dalvik-cache twice, as all changes should be in the /system portion of the ROM, which does not affect your /data partition in any way.