Step 1: Materials and Tools
One 10' length of 2 x 4 construction lumber, which you will rip into two 1 x 4's. Pick the straightest, cleanest piece you can find. If you don't have a bench saw, you'll need enough 1 x 4 to go around the table - approximately two 7' lengths and two 3' lengths (three 8' pieces is plenty).
One 8' length of 2 x 4 construction lumber, which you will rip into two 2 x 2's. Pick the straightest, cleanest piece you can find. If you don't have a bench saw, you'll need enough 2 x 2 to make the four legs and two crosspieces - approximately six 3' lengths (two 8' pieces is fine).
A bench (or table) saw is necessary to rip the 2 x 4's. A miter saw is handy to cut the wood to length. I used a brad nailer, wood glue, and a few deck screws to assemble the table. Wood filler, an orbital sander, and paint was used to finish the table, but all that is unnecessary if you're just going to use it as a utility table.
Step 2: Rip Lumber
Rip the 8' length of 2 x 4 into two 2 x 2's. They'll form the legs and cross-braces.
Step 3: Edges
Assemble using wood glue and brad nailer, as shown.
Step 4: Legs
I cut two pieces to fit inside the underside of the table, to strengthen the top and to provide something else for the legs to screw into. They're 400 mm (16") from each end, but just pick a distance that you think looks right. I cut the legs to make the table 780 mm (31") high, so it lined up with our sewing table. The legs were glued and brad nailed in place, then screwed into through the edges and to the crossbrace. The leg positioning is not critical, but the closer they are to the end the easier the table will be to get through doors. There is hardware available to allow you to easily make folding legs, but they'll triple the cost of your door...
Glue and nail a patch of plywood over the hole, then cut some pieces of wood to fill the hole from the top side (jmarusoi helpfully points out that if you're going to use the table for a computer, leaving the hole open provides a neat way to deal with the cables).