There are many things to consider, but an important one is the expansion of the table's top against the apron. Wood expands and contracts across the grain, so the table top must be mounted somewhat loosely to allow it to move independently from the base of the table.
Here's a Woodcraft picture that shows three ways to do this:
You might want to research bread-board ends as an option, too.
As far as wood selection, are you trying to match other furniture? That would be my first criteria as far as wood. Also, pine is easy to work but not especially durable as a table top. More expensive hardwoods are usually used for tables but some can be difficult to stain without blotchiness. Maple comes to mind as getting blotchy, as does cherry to some extent.
You'll get lots of advice here, I'm sure. Good luck!