Be wary of newbie guilds. It's not the end of the world to join the guild of the guy who spammed you with a random guild invite in Stormwind or the group of rag-tag beginners that somehow fell together in The Barrens. You may meet folks who'll remain fast friends for years to come. In general, though, you'll get a more lasting (and organized) experience if you look for a more established group.
Decide what type of guild fits the way you play (or want to play) right now. Look for a guild that plays with the same emphasis you do: PvE, Arenas, Battlegrounds, world PvP, roleplaying, PvP twinking, leveling, alts (similar to leveling, but members are experienced players), social (very chat- and event-focused). Look for people who play the way you enjoy the game. We do not recommend "the best" endgame raiding guilds for new players (and this guide is not designed to help you vet progression raiding guilds).
Look for players like you. For some players, variety is the spice of life – but for most players, you'll be more comfortable if you share something in common with other guild members. Look for a group with other people like you, whether that's teens, working professionals, married couples, or even more specialized groups such as military/civic employees or GLBT players.
Get social. The single most effective way to find a good guild fit on your own server is to meet people. Interact with other players. Group up for quests, ply your trade and make purchases from other tradesfolk of similar levels, run level-appropriate instances or help someone who's struggling with adds as you pass by.
Watch LFG announcements in the Trade and Guild Recruitment channels. Contact guilds advertising their recruitment for more information. You can post Looking for Guild messages in these channels, too, but it's a fairly needle-in-a-haystack strategy, and you may get a fair bit of razzing from other players.
Read the official Blizzard realm forum for your server. Look for guild recruitment threads. Just as important, keep an eye out for drama threads that shed an interesting light on a guild's attitudes and behavior. Get a feel for the guild's general reputation, and observe how guild members conduct themselves on the forums.
Look up guilds of interest on the Armory. Look at their members' gear to see get a feel for how often leveling members run instances (look for lots of blue gear). See how many characters they have and what the general level range is.
See who's online during your normal play times. Do a /who on guilds you're interested in on a couple of different nights at your usual play time. (If you're new to the realm, you can create a level 1 character to do this.)
Talk to current guild members. Ask about their ultimate guild goals, how long they've been together, average player age, typical play times, regularly scheduled events. Find out if there are any geographic or other commonalities that might exclude you ("We're all from Yuma, Arizona" or "We all go to UofM").
Visit the guild web site or forum. What's going on during a typical guild week? Do members seem serious, immature, friendly, rude, humorous, crass ...?
Try it out. If you're still not sure, see if you can't come along as a guest on a guild event or two. Anyone who's gotten stuck in the wrong group will understand and respect your caution.
Finally, don't be afraid to leave a guild that's just not the right fit. It's not always the fault of anyone or anything in particular if things simply don't click. Be polite; the best way to pull out is to speak with the GM (Guild Master, or Guild Leader) or an officer first. Be brief but honest ("I've decided to move to another guild where I'll be playing with a good friend. Take care and thanks for having me!"). You can send an in-game note or private message on the guild forums if you're uncomfortable saying something in person.