I pretty regularly have lucid dreams. I can also control them generally without problems of waking up any earlier than if I normally slept.
The key is finding a que that you realize that you are in a dream. I wear a wrist watch regularly so I use that as my que most of the time. What you do is look at your watch, look away, imagine a different time, then look at it again. If the time changes on my watch, I know I'm dreaming.
In most of my lucid dreams, I am flying (DBZ style) or I use my mind to move inanimate objects (chairs, books, etc). It's like I have an automatic filter now that my mind automatically tries to do those things to determine if I am dreaming or not.
It can be difficult starting out, but it does get easier with practice. Probably the people who have the most difficulty are the ones who don't recall their dreams regularly.
Nice, I have a thing that once I realize I'm dreaming I like to hover-fly; basically float a few inches off of the ground and just move around without having to walk. It's a really fun way to fly.
Some of the powers I've been able to use in lucid dreaming after working at them:
* Materialization / dematerialization - making objects appear or disappear. For example if I encounter a barking dog I can materialize a metal gate in front of it. I can't seem to dematerialize living things though but I can do it to inanimate objects if I concentrate.
* Shape change - changing the shape of my dream body to various animals, or in one case, a willo-wisp type ball of light.
* Phasing - think of Kitty Pryde from X-men, being able to phase through walls, the ground, etc.. This is one of the harder ones in terms of development time.
* Fast flying - most people can fly in their dreams, but it's fun to test just how fast. In one case I flew from Portland to Seattle in about 2.5 seconds (which placed me at roughly 4000 mph). Later on I tried flying to the moon repeatedly, and wound up in outer space somehow surrounded by stars with no idea where I was. Lost. So I decided to use the wakeup trigger because I couldn't find my sleeping body. Further dreams years later and I've traveled to other planets light years away.
* Wakeup trigger - learning the ability to wake up from any dream. Very useful.
* Superstrength / durability - fun comic-book type power, where you can throw cars, punch through solid concrete walls, etc..
* Psi shield - useful against entities which try to hypnotize or otherwise use some kind of mind control. Essentially in my dream I create a semi-invisible shield in front of me, similar to the forcefields in predator, and use it to block attacks from other beings I run across.
* Mental domination - against the weak willed entities you come across it's fun to be able to exert your willpower over theirs and dominate their minds. Typically I don't use this if I don't have to though.
* Telepathy - creating mind links with other beings to allow for more efficient transfer of memories, emotions, and thoughts. I have used this before with everything from dolphins to dogs, cats and even entities from other planets.
* Ultra sharp vision and telescopic vision. By materializing floating lenses I am able to look deep into outer space during my dreaming sessions and see things far off in the distance that I wouldn't be able to see otherwise. In the dreamworld it seems like space is simply chock-full of strange entities, ghost planets, and other oddball stuff.
Once you start lucid dreaming, you can create new powers on the fly. It's amazingly fun, and it becomes incredibly exciting to develop new abilities. When I do have a lucid dream my memory of the dream is substantially more clear than normal dreams which are remembered more as muddled.
Like I said - you sleep 1/3 of your life anyways - might as well put it to use for some fun! I've had more fun lucid dreaming than any video game I have ever played or any amusement park ride I have ever been on.