Simple Eyelet Buttonhole
The simplest way to knit a buttonhole is to make an eyelet: just knit 2 stitches together, then bring the yarn over the needle. On the next row, work the yarn over like a regular stitch. This makes a small hole, and it's appropriate for smallish buttons, baby clothes. It works well in a garter stitch button band, where it is concealed by the ridges of the garter stitch.
Simple Eyelet Buttonhole for Bigger Buttons
In the Sweet Oak Hooded Cardigan, I wanted to use simple instructions in the pattern for the buttonholes, but needed something bigger than a single eyelet so I could use big shell buttons. So I used a double yarn over eyelet: knit 2 stitches together, wrap the yarn around the needle twice, then slip 2 stitches as if to knit and knit them together by putting the tip of the left needle through the front of the slipped stitches. Abbreviated, this looks something like k2tog, yo twice, ssk. On the next row, purl the first yarn over, and knit the next.
Horizontal Buttonhole
This is a good buttonhole for big buttons. With the right side of your work facing, when you get to your buttonhole, cast off the number of stitches (how many depends on how big the buttons are). On the next row, when you get to the buttonhole, cast on the same number of stitches that you cast off and continue working.
Vertical Buttonhole
This is the fussiest kind of buttonhole, because you have to join a second ball of yarn, which means more work during the finishing. But if you have a vertical buttonband and don't want to use an eyelet buttonhole, this is one of the most appropriate. With the right side of your work facing, work to where you want the buttonhole, turn your work over, and work enough rows for the desired height of the buttonhole. Now, on the left side of where you turned, join a new ball, work the same number of rows as you did on the right. Now rejoin the left and right sides, using one of the two balls of yarn. There are variations and perfections to the vertical buttonhole, but that's one method.
Tulips Buttonhole from Interweave
A visually perfected horizontal buttonhole from Interweave Knits. Here's the how-to buttonhole video with Eunny Jang. You can also read the instructions in Summer 2010 Interweave Knits magazine.