A patch that seems to do what you want is as follows. It will apply to all sectional units, though.
The hyperref package must be loaded after the patches have been applied.
\documentclass{scrartcl}
\usepackage[rm=oldstyle]{cfr-lm} % for oldstyle figures
\usepackage{microtype}
\usepackage{xpatch}
\makeatletter
% patch the relevant commands to enclose the section title as argument to a command
\xpatchcmd{\@sect}{#8\@@par}{\lowsmallcaps{#8}\@@par}{}{}
\xpatchcmd{\@ssect}{#5\@@par}{\lowsmallcaps{#5}\@@par}{}{}
\makeatother
% \usepackage{hyperref} % Must go after the patches
\setkomafont{disposition}{\normalfont\scshape} % use small caps for section titles
\setkomafont{sectionentry}{\normalfont} % use normal font in the TOC
% make everything lower case in section titles
\newcommand\lowsmallcaps[1]{\textls{\MakeLowercase{#1}}}
\begin{document}
\tableofcontents
\section{A section With Mixed Case}
\subsection{This is small caps}
\end{document}

A different way, inspired by Sveinung's answer, is to redefine the commands; be careful that some other package didn't redefine them, because this could cause conflicts.
\documentclass{article}
\usepackage{xparse}
\usepackage{textcase,color}
\ExplSyntaxOn
\NewDocumentCommand{\changesectionalcommand}{mm}
{
\cs_new_eq:cN { csc_\cs_to_str:N #1 } #1
\RenewDocumentCommand{#1}{som}
{
\IfBooleanTF{##1}
{
\IfValueT{##2}{ \use:c { phantomsection } }
\use:c { csc_\cs_to_str:N #1 } * { #2 { ##3 } }
\IfValueT{##2}{ \addcontentsline{toc}{\cs_to_str:N #1}{##2} }
}
{
\IfNoValueTF{##2}
{
\use:c { csc_\cs_to_str:N #1 } [ ##3 ] { #2 { ##3 } }
}
{
\use:c { csc_\cs_to_str:N #1 } [ ##2 ] { #2 { ##3 } }
}
}
}
}
\NewDocumentCommand{\changesectionnumber}{mm}
{
\cs_set:cpn { @seccntformat@\cs_to_str:N #1 } { #2 }
}
\ExplSyntaxOff
\makeatletter
\renewcommand{\@seccntformat}[1]{%
\@nameuse{@seccntformat@#1}\csname the#1\endcsname\quad}%
}
\usepackage{hyperref}
\usepackage{lipsum}
\changesectionalcommand{\section}{\MakeTextUppercase}
\changesectionalcommand{\subsection}{\textcolor{red}}
\begin{document}
\tableofcontents
\section{Mixed Case}
\lipsum[2]
\subsection{Red title}
\lipsum[2]
\section[Bar]{Foo}
\lipsum[2]
\section*{Foo foo}
\lipsum[2]
\section*[Bar bar]{Foo foo foo}
\lipsum[2]
\end{document}
A feature of this redefinition is that \section*[<toc entry>]{Title} is allowed, which will automatically perform the \addcontentsline instruction. Of course, one would usually type \section*[Title]{Title}.
The syntax is
\changesectionalcommand{\seccommand}{\macro}
where \macro receives an argument and \seccommand is one of the known sectional commands (from \part to \subparagraph).
For instance, to have sections in spaced lowercase small caps, one can say
\changesectionalcommand{\section}{\lowsmallcaps}
\newcommand{\lowsmallcaps}[1]{\normalfont\scshape\textls{\MakeTextLowercase{#1}}}
(for \textls, microtype is needed).
However, also a corresponding change to the way the section number is typeset is needed, so a complement has been defined and the complete code would have also
\changesectionnumber{\section}{\normalfont}
or the section number would still be boldface, as usual.

hyperrefseems to make problems (sorry, but I didn't know that before), and this doesn't work. – Manuel Feb 21 '13 at 18:46hyperrefis important in this case, since hyperlinks are linked with sectional units, citations, table of contents and more... – Werner Feb 21 '13 at 18:57hyperrefis a good addition. If you're usingtocloftorsectsty, then include those as well. If not, don't worry. That's what comments to posts are also for; correction of updated material... – Werner Feb 21 '13 at 19:33\usepackage[spanish, es-noindentfirst, es-nosectiondot]{babel}affects. I will update the question. – Manuel Feb 21 '13 at 19:34hyperrefafter doing the patch. – egreg Feb 21 '13 at 20:39\textlsis not necessary if you have themicrotypeloaded withtracking=smallcapsoption, isn't it? – Manuel Feb 22 '13 at 20:49\renewcommand{\scdefault}{ssc}. – Sveinung Feb 22 '13 at 23:30\setkomafont{level}{command}and\addtokomafont{level}{command}. For example:\setkomafont{disposition}{\normalfont\scshape}changes all headings to the main font and small caps, including numbering. – Sveinung Feb 22 '13 at 23:35if-test =:-) – Sveinung Feb 22 '13 at 23:48