Choosing the right ROM can be very challenging. There are so many to choose from. You can easily find yourself lost or overwhelmed. Every one is developed for a different reason with a purpose in mind. Speed, size, battery, software plus many more.
The best place to start would be the Samsung Forum
on the XDA Developers website. Look for a ROM with plenty of posts. Also have a read through the posts to get an idea of the history. All ROMS start with issues so don't be alarmed by the 1st few pages. Check the later posts to see if anyone has had any issues with the latest release/s.
Here is a quick overview of the types of AOSP (Android Open Source Project) ROMS available.
AOSP ROMs are built from the original android source. They are essentially a 'clean' version of android without any additions from manufacturers (e.g no Touchwiz, Sense, MotoBlur etc...). They are popular mainly because they are so customisable. Here is a list of the three main AOSP build you will find:
This is a build straight from Google's sources and does not contain any modifications whatsoever, other then those that make it run on the particular device. Here is the AOSP project website for more information:http://source.android.com/
This is an extremely popular AOSP build that provides endless customisation to the user. The builds are fast, stable and reliable, and nearly every android device has a cyanogen mod ROM built for it. It is also popular for its 'nightly' (literally) updates. More information can be found on the Cyanogen website here:http://www.cyanogenmod.com/
MIUI is a chinese rom that has been heavily customised, and is influenced by iOS. Think what would happen if an android phone and an iPhone had a baby... Despite commiting the henious crime of trying to be an iPhone, it does work. MIUI Roms are essentially all about speed and looks, if that is what you are after! Here is the MIUI website for further information:http://www.miuiandroid.com/
Once you have found the ROM of choice. Flash using ODIN or if its a CWM ROM please follow the below guide. *Make sure your phone is rooted with CWM Recovery installed. See How To Root.
How to install a ROM using CWM
Installing a ROM using CWM is a lot less hassle then installing via Odin. The ROM developer will specify which method of installing their ROM you can use, but it is usually done by a CWM flashable .zip.
1. Boot into CWM as described above
2. Navigate to 'install zip from sd card'
3. Select it, and then navigate to 'install zip from sdcard' again!
4. Select the ROM you downloaded from your sd card
5. Navigate down to yes
6. Let CWM install you new ROM!
Note: The same process applies for flashing a kernel