Combining typefaces
Combining typefaces is a vital aspect of your projects but it's a tool that is hard to master.
Generally, it is said that you should use no more than two fonts in your design. It is a good rule; but let me explain it—or better—enlarge it.
While working with text for an informational text block, similar to the one you are reading now, stick to it. You will express enough contrast and interest while staying balanced and the reader will not get distracted. They will follow the flow and understand the hierarchy of what they are reading.
However, as a designer, while typesetting you're not always working on a pure text block: you could be working with words on a packaging or on the web.
However, if you know enough about typography and your eyes are well trained (usually after years of visual research and of designing with attention) you can break the rules. You get energy only when mixing contrasting fonts, so why not add a third one to bring in a better balance between the two?
As a rule, you can combine fonts when:
They are not in the same classification. You mix fonts to add contrast and energy and to inject interest and readability in your document and this is why the clash between serif and sans has been proven timeless. Working with two serifs/sans together instead works only with extensive trial and error and you should choose two fonts that carry enough differences.
You can usually combine different subfamilies, for example a slab serif with a modern one or a geometric sans with a grotesque.
If your scope is readability, find the same structure. A similar height and similar width works easily when choosing two classifications; but if your scope is aesthetic for small portions of text, you can try completely different structures, such as a slab serif with a geometric sans. You will see that sometimes it does the job!
Go extreme! This requires more experience to balance it out, but if you're working with display or script typefaces, it's almost impossible to find something similar without being boring or unreadable. Try to mix them with more simplistic typefaces if the starting point has a lot of decorations; you won't regret the trial!