I'm a hobbyist electronic musician, and I use GarageBand as a music "sketch pad", of sorts. The built-in software instruments are good enough for laying down basic musical ideas, and can be altered using synthesizer-style parameters (ADSR/envelope, filter cutoff/resonance, basic effects). Some basic drum loops are included.
Audio recording is a snap to use for basic vocals or acoustic instrument tracks. Effects such as reverb, tempo-synced delays and distortion/overdrive are available, as well as Autotune-style simple pitch correction. (Don't expect any outlandish Kanye/T-Pain/Ke$ha effects; the pitch correction is rather subtle.)
GarageBand projects will open up in Logic Pro, which gives you an upgrade path. That seems to be the only sound program GarageBand plays nice with; GB cannot save MIDI files, and does not MIDI sync to external sequencers, software nor hardware.
Two major drawbacks keep me from using this as my main music production studio, though. One is the severe MIDI limitations. Only one track at a time can receive MIDI input, and GarageBand does not send MIDI Out at all, so if you have an external synth or sound module, forget about using it as a sound source; you're stuck with GarageBand's internal sounds. The other is lack of ability to add more sounds beyond the Jam Packs, which unfortunately were taken off the market more than a year ago and can be hard to find. There's an esoteric method of adding "drum" sounds by altering a Sound Effect instrument, but it's limited in usefulness.
When I've got an idea in my head and don't want to switch over to Windows via Boot Camp to fire up my Cakewalk Sonar, I'll pull up GarageBand and noodle around with a few tracks. Once I get the basic chord and melody progression, I then flip over to Cakewalk for more in-depth production and sound design.