The hardware provides several ways to take analog samples at fixed intervals. For example on a 16 MHz Arduino UNO you can set the ADC clock prescaler to 128. That gives you an ADC clock of 125 kHz or 8 microseconds per cycle. It takes 13.5 cycles to do a conversion in Free Running mode so you would get a sample and interrupt every 108 microseconds.
125 kHz is under 200 kHz, the fastest you can get accurate 10-bit samples. You can change the prescale to 64 to get a 250 kHz clock at the expense of noise in your samples. That would give you a sample and interrupt every 54 microseconds.
The maximum clock rate for the ADC is 1 MHz so you could get samples at 27 (prescale = 32) and 13.5 (prescale = 16) microseconds with increasing noise.
If you want a specific rate you can use Timer1 to trigger a sample at whatever rate you can set Timer1 for. The timer rate has to be slower than the sample rate for the chosen pre-scale.