I've provided a way to make LaTeX essentially treat unnumbered sections in the same way as numbered sections (but pretend that they are really deep so that LaTeX won't number them), hopefully without breaking other things. This is same approach used in classes like amsart.
This means that one can have numbered and unnumbered sections in the same document, and all will appear in the table of contents and bookmarks as usual (the latter if hyperref is loaded, optional), with hyperlinks pointing to the right places, without any effort except loading the package! See the comments in the code below for more details. Note that this doesn't really need to be in a package, I just thought it might be more convenient.
However, note that the table of contents gets an entry in the table of contents, which may not be desirable! My example below illustrates how to suppress that also.
% save this as fix-unnumbered-sections.sty
\ProvidesPackage{fix-unnumbered-sections}
% This package is available at http://tex.stackexchange.com/q/33696/
% It patches the standard classes so that they treat unnumbered and numbered sections equally! (At least, I've tested it with the article class.)
% As a result, even the unnumbered sections gets entries in the TOC and, when hyperref is loaded, they also get bookmarks as per the default hyperref setting for bookmarks.
% Unnumbered sections can also have short titles for TOC and bookmark purposes, just like numbered sections.
%
% It works by pretending the unnumbered sections are deeper than \c@secnumdepth (in fact, just by assuming that they are 1000 (\@m) levels deep).
% I believe there are no side effects to this...
% We just pretend that \@ssect, which LaTeX uses to treat unnumbered [sub*]sections differently to (maybe) numbered ones (if they are no deeper than \c@secnumdepth levels), doesn't exist.
% Instead, we always use \@sect, which LaTeX uses for numbered sections, and sections which would otherwise be numbered if they weren't deeper than \c@secnumdepth levels.
\RequirePackage{etoolbox}
\patchcmd{\@startsection}{\@ssect{#3}{#4}{#5}{#6}}{\@dblarg{\@sect{#1}{\@m}{#3}{#4}{#5}{#6}}}{}{\PackageError{fix-unnumbered-sections}{Unable to patch \string\@startsection; are you using a non-standard document class?}\@ehd}
Here is a test file to explore the behaviour (needs two runs):
\documentclass[a4paper]{article}
\usepackage[bookmarksopen=true,bookmarksnumbered=true]{hyperref}
\usepackage{fix-unnumbered-sections}
\usepackage{lipsum}
\begin{document}
\bgroup\makeatletter\let\addtocontents\@gobbletwo
\tableofcontents\egroup
\section[First section]{This section is numbered}
\lipsum[1]
\subsection*[Unnumbered subsection]{This subsection is not numbered}
\lipsum[2]
\subsection[Numbered subsection]{But this one is}
\lipsum[3]
\newpage
\section*{This section is not numbered}
\lipsum[4]
\subsection*{And neither are its descendents}
\lipsum[5]
\end{document}

\documentclassand the appropriate packages, so that those trying to help don't have to recreate it. – Peter Grill Nov 04 '11 at 22:21scrartclone would use\addsec{title}instead of\section*in this case. – cgnieder Nov 18 '12 at 14:44