Over on his blog Ajoo has posted a very comprehensive introduction to the technical concepts behind RTL-SDR, as well as any other SDR in existence. His post first goes through the basic communications theory and mathematical concepts required to understand the technical concepts behind software defined radio. He then goes on to specifically discuss the RTL-SDR and how it works internally, mentioning what the major components do and providing useful block diagrams.
In part II of his introduction he moves on to the software. Here he starts to explain a bit about librtlsdr and how the RTL-SDR drivers and codebase is put together. Further on he explains higher level software such as rtl_test, rtl_fm, rtl_sdr, the pyrtlsdr wrapper and how it could be used to demodulate FM.
If you're looking at diving deeper into SDR theory then Ajoo's posts are excellent starting points. Note that the theory explanations come at about an undergraduate University level of complexity, and thus these posts are mostly for people wanting a deeper understanding of SDR. To simply use an RTL-SDR to receive signals such a deep level of understanding is not required.
In a future post which is not yet available, Ajoo will introduce GNU Radio and show how to demodulate FM signals. It appears his goal is to work his way to an understanding of how GPS L1 signals work.
Over on his website P. Lutus has written up a useful article that introduces us to some common SDR hardware (RTL-SDRs, upconverters and the HackRF), mentions some common SDR software, and then dives into some SDR theory explaining concepts like the frequency domain and IQ sampling.
The theory sections in particular are explained quite intuitively with animated and interactive graphs that really help with visualizing the math. The explanations are short and not math heavy, so if you have half an hour you can learn some of the basic theory behind making SDRs work.
The lab sheet starts off by showing how the RTL-SDR works at a high level, then goes on to explain the function of the R820T tuner chip and RTL2832U chip. The lab then shows a behavioural level model of the RTL-SDR which becomes useful for mathematical analysis. Finally, the lab also explains demodulation theory for FM and FSK signals and sets several lab exercises that involve writing FM and FSK demodulators in MATLAB or Python.