We are developing a multimeter using a PIC18 microcontroller and we are searching for the best method to switch between different ranges in multimeter with the smallest possible amount of switching delay.
You don't give a number for the maximum delay you require, or much description of the design, but I'm assuming it's to be an autoranging/switching type of meter.
There are plenty of cheap analogue multplexers available, the best known being the 74xx4051, 4052 and 4053 series.
These are dual polarity 8:1 (4051), 2 x 4:1 (4052), and 4 x 2:1 (4053) muxes, available for under 50 cents and made by various manufacturers (e.g. TI, AD, Maxim, etc) I would have a look at these and similar offerings. Here is an example 4051 part from Farnell (many more here). Also see analogue switches.
For slower switching only one or two ways, but better isolation and lower resistance there are mechanical relays (or solid state relays, such as the PhotoMOS type from Clare) These can be used where appropriate, together with IC switches, e.g. to isolate one channel from the next when active.
For a lot of applications nowadays, you can use a single high resolution delta-sigma A/D and not bother with ranging at all. The tradeoff to get the high resolution is long conversion times, but in a multimeter time is measured on a human scale so a few 10s of ms is still instantaneous.
Another trick is to present the input signal with different gains to the different A/D inputs of the micro. The micro then uses the one with the highest reading that isn't saturated. Usually you do a little blending with the next lower reading down so that there isn't a sudden jump when different ranges are used. It also helps to do some calibration during manufacturing to store offsets and gains separately for each of the A/D inputs.