An update: if you use unicode-math, it provides \symbfup and \symbfit commands for bold upright and italic letters, respectively. There are similar bold sans-serif, calligraphic and script alphabets. There are also \mathbfup and \mathbfit commands, intended for whole words in math mode, but I’ve honestly never had cause to use them. Finally, traditional math commands are supported for backward-compatibility.
The \boldsymbol command still works, including for symbols other than letters, if you load one of the math fonts that comes in bold (such as XITS Math) or if you declare a bold math font with \setmathfont[version=bold]. This can be a FakeBold version of the math font, for instance,
\setmathfont{NewCMMath-Regular}
\setmathfont{NewCMMath-Regular.otf}[
version=bold,
FakeBold = 1.2 ]
It can also be useful to add \bfseries\boldmath to your header formatting, to make your math match the weight of the text.
The one disadvantage of this is that, as of 2021, you cannot use version= and range= together. Your bold symbol font will only work if you do not mix-and-match different math fonts with range=.
If you stick to legacy math fonts, isomath adds a bold italic \mathbfit alphabet, and optionally bold sans-serif math alphabets for tensors. The mathalpha package adds bold versions of several other math alphabets, such as a heavy blackboard bold and a bold calligraphic.
\[and\]as discussed here. Also see this for more on bold math symbols. – Peter Grill Jul 09 '11 at 02:31