Our company has many sins of the past, one of them being a lack of information architecture (IA).  Due to this we often have large numbers of sites dumped into a subweb.  Working on the corporate intranet migration to the 2010 platform, I noticed that the TOC webpart was only displaying 20 sites, despite having multiple subwebs below it.

In order to fix this issue, you need to make a change in the site settings for the navigation of the site, since this is what the TOC webpart relies on.

Navigate to Site Settings –> Navigation


Change the Current Navigation limit entry to something appropriate for this level of subweb:

Maximum number of dynamic items to show within this level of navigation:

In my case, I set it to 200, your needs may be different.  After making this change to the current navigation setting all my subwebs now appear in the Table of Contents webpart.