Out of the box, most WordPress themes will create default navigation for your site based upon the content you create. Posts, for example, will be available through some kind of blog presentation – displayed in reverse, chronological order. In addition, you may be able to add Widgets to your site's sidebar that allow readers to navigate your posts based upon the category they were in or when they were published.
Pages, by default, are usually used to build a menu somewhere in your theme. Each top-level page becomes another item in that menu. When you create new pages, you can choose to “nest” them underneath other pages by choosing a page Parent. This can be cumbersome, however, and, eventually, you may wish to organize your site's content by creating a Custom Menu.
In addition to allowing you to more flexibly organize the pages on your site, Custom Menus now allow you to add posts, categories/tags, and custom links to your menu. With this feature, you can really build an entirely customized navigation tool for your site, and you can be sure that all your content is organized and available to your readers exactly how you want.
There are two primary components to building a Custom Menu: