MP3
The lossy MP3 codec is now universal and the premier choice for delivering digital music. Supported all over on PC, Mac, Linux and on virtually all portable devices, whether it be a dedicated MP3 player, your phone or car stereo
Lame
Ain't an
MP3
Encoder - but it still is one. Recursive acronyms should be used more in everyday life

Lame is rated as the best MP3 encoder having been developed as an open source project from the ground up. Optimised for fast encoding with quality optimised algorithms for medium-high CBR, ABR and VBR bit-rates
To get started you need the latest Lame codec and a front-end. My personal preference has always been for Razorlame simply because it needs no instructions it is so easy to use. Download the lame source folder, unzip and then put it away somewhere. Then point Razorlame to the Lame directory and away you go configuring your preset of choice. Lame is always in development but for your assurances use the latest stable release over a beta version
CBR v VBR v ABR
Before you can configure the Lame encoder you need to think about the settings to use. Firstly which encoding method?
CBR - Constant Bit Rate
This is exactly what it says and maintains a constant bit rate across the entire file. So whether you choose 160kbps or 320kbps, every second of the final MP3 file will be at your setting. CBR encoding is useful for consistent results and being able to determine resultant file sizes.
VBR - Variable Bit Rate
Here the user selects a preferred quality level or to define a range. The encoder will then select the optimum bit rate for each portion of a song. So during an "uncomplicated" sequence the encoder would use a lower bit rate but during the chorus the encoder would use the maximum bit rate set. The theory is that this compresses the file size even further as you are not wasting say 320kbps on a part of a file that does not need it but it does make predicting final file sizes harder
ABR - Average Bit Rate
This takes VBR one step further in that the user will select an
average bit rate for the encoder to target. So just like VBR the encoder will select the optimum bit rate according to the portion of the song being encoded but will be more targeted and may select a higher (or lower) bit rate in order that the final result is a file which is within the user's selected target average
Before selecting your encoding method of choice it is important to bear in mind that your device supports the method. ABR may not be as widely supported as CBR and VBR. For a guide on which Lame presets to use then look no further than the excellent Hydroenaudio wiki:
LAME - Hydrogenaudio Knowledgebase