Building on Werner's solution, you can define a new command for more automation.
In the code below, I define a command called \redub (for "red underbrace") that uses _ as delimiter between its two arguments, just like \underbrace, and with which
- juggling the two colours (red and the current colour) is not necessary,
- hardcoding the current colour is not necessary.

\documentclass{article}
\usepackage{xcolor}
\usepackage{mathtools}
\makeatletter
\newcommand{\redub}{}
\def\redub#1{%
\@ifnextchar_%
{\@redub{#1}}
{\@latex@warning{Missing argument for \string\redub}\@redub{#1}_{}}%
}
\def\@redub#1_#2{%
\colorlet{currentcolor}{.}%
\color{red}%
\underbrace{\color{currentcolor}#1}_{\color{red}#2}%
\color{currentcolor}%
}
\makeatother
\setlength{\parindent}{0pt}
\begin{document}
{
\color{blue} % only to demonstrate 1. and 2. (see the top of my answer)
A simple example:
\[
\redub{Ax=b}_{\mathclap{\text{my linear system}}}
\]
blah blah blah\ldots \\[1em]
}
A more involved example
\[
\redub{\partial _t(m_x m_yHu)}_{\mathclap{\text{Local acceleration}}}
{+}
\redub{\partial_x(m_yHuu) + \partial_y(m_xHvu) + \partial_z(m_xm_ywu)}_%
{\text{Advective acceleration}}
{-}
\redub{m_xm_yf_cHv}_{\substack{\text{Coriolis}\\\text{acceleration}}}
\]
\end{document}