Audio delay using discrete components
One common method is to use a circuit know as a bucket brigade.
These circuits consist of a chain of capacitors. Connecting the capacitors are switches. By driving the control signal for the switches the signal is transferred from one capacitor to the next each time the control (or clock) signal transitions. The time delay you can achieve is limited by the number of stages you have and the slowest sampling rate you can tolerate.
Because you need many stages to create a longer delay it is not really practical to implement this with discrete components. There are a few ICs that implement the function varying from 512 to 4096 stages. With 4096 stages a 20kHz sampling rate will give you 100 ms of delay. You could cascade a number of delay lines together, but you will be losing signal quality with each section.
If signal quality and the length of the delay is important, then digital sampling techniques will be very hard to pass up.
There are a lot of ways to get a delay, but I don't know of any that just use "discrete components". The best way to do reverb in the modern world is to use a DSP.
The only way I know of to do this "analog" is to use physical objects like rooms or metal plates, or magnetic tape.
"In the millisecond or second range" is a pretty huge range, you know. If you have a circuit that produces 1 ms of delay, you would need 1,000 of them to get to 1 second. Older reverbs created long tails using feedback, rather than long delay elements. Schroeder reverb, enhanced version
You can use all-pass filters to add short delays, but they delay different frequencies by different amounts, resulting in phase distortion. 4 - Delay correction, Projects
Otherwise you need to use bucket brigade devices, which emulate a slow transmission line. But they aren't really analog (they used switched capacitors which are analog in voltage but discrete in time, so they alias etc just like digital) and aren't feasible to make from discrete components anyway.
Figure 1: A simple eight-stage bucket-brigade device (or BBD) delay line.