Hashtags are tags used on the Twitter messaging service to add metadata to a "tweet" indicating the topic (or topics) of that tweet and indicating that the tweet is connected to a larger conversation (or if that conversation does not exist yet, proposing that such a conversation be started).
The name "hashtag" comes from the fact that such tags are created by adding a hash mark (#), aka pound sign, in front of a single word or compounded multi-word phrase. Other users can search for this word or phrase or even set up a feed to that word or phrase, in order to track the larger conversation.
The world of Twitter hashtags is constantly in flux, with micromemes emerging and dying out all the time. Hash tags might help provide timely info on a current event, such as #sandiegofire or #egyptprotests point out news or info about a product or company, such as #iphone4 or #microsoft, or they might indicate another entry an ongoing series of jokes, such as #crapsuperpowers or #11thcommandment.
Hashtags are useful because they can instantly tie thousands or even millions of tweets, even by people who don't know each other, into a single, globe-spanning conversation. They can also allow people to quickly find all the latest news on a particular topic, and can allow anyone to propose a new topic of conversation for the Twitter world.
Because of the popularity of hashtags, there has arisen numerous sites and tools to keep track of hashtags and find out about new or trending hashtags. People have also started creating meta hashtags to add ironic additional commentary to tweets or to make fun of other hashtag memes. In fact, hashtags have become so ubiquitous and widely known that people have even started using them in forums other than Twitter, such as on blogs or in emails, as a shorthand way to make jokes or add meta commentary.
As useful as hashtags may potentially be, they also have the potential to be horribly misused, creating pointless clutter and confusion. For hashtags to achieve their potential, it is important for as many people as possible to pay attention to which hashtags are in use, and for which purposes, and to only tag a tweet with certain hashtag if they are adding meaningfully to the conversation. Hashing everything in a tweet such as "I am #eating #pepperoni #pizza in my #office #right #now" does nothing, helps no one, and will only annoy your followers, if you even have any.
It should also be noted that a small but vocal subsection of the Twitter community is ardently against hashtags, feeling that they distract from "real human communication" or otherwise confuse and clutter the Twitterverse. Some of these people boycott hashtags altogether and try to convince others to do the same.