It is absolutely stunning, with loads of history. Tickets can be bought online from several places or from tourist information sites, so check around for the best deal. Depending on how in-depth you want to explore, allow anywhere from 2 to 3 hours to the entire day for this attraction.
When you first arrive, wait for the next tour by one of the "Beefeaters" to start. If you've come in the middle of one, you will end up at the back and it can be hard to hear and follow. They usually start at least every half- hour, more often during peak season. The Beefeaters are extremely knowledgeable about the history of the tower, and they are not just tour guides, as they actually live at the tower and perform official duties as well.
A tour will take about 1 hour, and then you will be on your own to explore further. It may be a bit hard if anyone in your party has difficulty with stairs or walking long distances, so allow extra time if this is the case. You'll probably want to see the Crown Jewels right after the tour, which takes approximately 20 to 30 minutes, as you're somewhat shuffled through there by moving walkways. It’s still very impressive, though.
Once you've done the tour and seen the jewels, you can safely leave with the knowledge that you've hit the best bits. There is a café if you're feeling a bit peckish, but it is somewhat overpriced and you'd be better off eating outside.
My strong recommendation is to hit this attraction early in the morning and stay for a few hours, and then have a go on the Big Bus Tour (see my entry on that). This way, you can relax a bit on the bus after trooping around the tower all morning, and you'll see most of the major sights and decide what you want to explore further.