If you are staying in Carlsbad Legoland would have been my obvious 1st choice just because of proximity. But my definite 2nd choice is Sea World...about 25-30 min south. My kids are 4 and 6 and they LOVE it!
The Zoo is about 40 min south. We haven't done it for the last few trips because my oldest can't handle all the down time walking between animals (zoos in general just aren't her thing) but it is an option too.