For the high frequencies one essentially needs a prescaler to reduce the higher frequencies to a frequency range the µC can handle. There are rather small and cheap prescalers (dividers) that can reduce the frequency by a factor of 256 or similar. A relativly cheap version is a U813 - working up to about 1 GHz. The small µCs can handle slightly depends on the µC used, and the method used.
Direct counting allows high frequenies, but resolution is limited, especially at low frequencies. PIC counter projects somewhat prefer direct couning as they have an internal prescaler for this mode that allows them to work up to about 40 MHz without extra Hardware.
In reciprocal counting mode the frequency limit is lower (e.g. 100 kHz), but resolution is good at low frequency too and is not reduced by the prescaler - so a higher prescaler can be used. Usually two ranges (with and without prescaler) would be needed for something like a 200 MHz - 1 Hz range. Obove there are links for such counters with AVR and ARM µCs - if you like PICs, somthing like a suitable PIC18 should do it as well, if it has a suitable timer that can do time stamping at high resolution.