Of course, but your question was rather general. If you have already tried Fourier and you think it's not good enough, then why don't you give us more details? Tell us more why your signal is so special, what small frequency difference do you want to detect etc.
FFT could be useful .However, it depend on many factors. if you have very noisy signal (low SNR) perhaps you can't get the frequency from mere use of FFT. Then some pre processing (filtering) may help.
IF the signals are known, then matched or optimaly mismatched filtering will be good - If the signals are unknown and cannot be modelled, then you should consider other options. IT very much depends on the signals in question
I certainly need more information as to what you mean by "multifrequency signals". I see you've tagged your posting with adaptive signal processing - a tricky problem domain, depending upon the variability of the signal you are trying to adaptively detect.