Range of Dates (1999-01 -- 2012-12)?
Of the two possibilities you offer, the first one — the one with the "en-dash" — is the (much) better one. In good typography, en-dashes are used (inter alia) to denote ranges of numbers, dates, years, etc. In contrast, em-dashes are frequently used to offset auxilliary, explanatory, or parenthetical thoughts. For much more on this subject, check out the question Dashes: - vs. – vs. — and the associated answers.
By the way, to streamline the typesetting of dates in various formats, including ISO 8601, check out the datetime package. For instance, the following MWE
\documentclass{article}
\usepackage{datetime} % http://www.ctan.org/tex-archive/macros/latex/contrib/datetime
\renewcommand{\dateseparator}{-}
\yyyymmdddate % instruction to typeset dates in ISO 8601 format
\begin{document}
\today
\end{document}
will typeset system dates automatically in ISO 8601 format:
This is another method using isodate
package. You don't have to worry about things much here.
\documentclass{article}
\usepackage[english,printdayoff]{isodate}
\begin{document}
\isodash{-}%
\noindent
{\isodate
\daterange{1999-05-03}{1999-05-31} \\
\daterange{1999-05-03}{1999-11-03} \\
\daterange{1999-05-03}{2000-04-07}\\
\daterange{2010-01-01}{2012-03-01}
}
\vspace{1cm}
\noindent
{\origdate
\daterange{1999-05-03}{1999-05-31} \\
\daterange{1999-05-03}{1999-11-03} \\
\daterange{1999-05-03}{2000-04-07} \\
\daterange{2010-01-01}{2012-03-01}
}
\end{document}
The usage specified in ISO 8601 is 2010-01/2012-03
for your example. The standard gives the example 1985-04-12/06-25
for a time interval starting at 12 April 1985 and ending on 25 June 1985.