
My Canon macro lens recommendations ...
Canon EF 100mm f/2.8 L IS USM Macro Lens 
Canon EF 100mm f/2.8 USM Macro Lens 
Canon EF 180mm f/3.5 L USM Macro Lens 
Sigma 150mm f/2.8 EX DG HSM Macro Lens
For most people the Canon EF 100mm f/2.8 L IS USM Macro Lens
will be the ideal macro lens.
It offers a reasonable working distance from the subject and excellent image quality with the added versatility/usefulness of Hybrid Image Stabilization.
It has quiet, fast Ring USM AF and makes a nice portrait lens as well.
If IS is not desired or your budget is tighter, the Canon EF 100mm f/2.8 USM Macro Lens
will probably be your ideal macro lens.
It offers very similar features to the IS version.
For those wanting to take their macro photography to the next level or need more working distance, the
Canon EF 180mm f/3.5 L USM Macro Lens is the answer.
It is well built, extremely sharp and has excellent image quality.
The 180mm focal length yields are noticeably more diffuse background blur than the shorter focal length macro lenses.
The Sigma 150mm f/2.8 EX DG HSM Macro Lens
offers a focal length that falls between the 100 and the 180 at a very reasonable cost.
It is also a good option.
All of these lenses offer a 1:1 magnification ratio - the image on the sensor (or film) can be up to the same size as the subject (life-size).
Display a 1x image on a monitor or in print and a small insect will look like a monster.
Read the full reviews to see which lens(es) are best for you.