A magnetic field uniform to 1 part in 107 or better, over a volume of a few mm3, is needed for high resolution work in nuclear magnetic resonance. We discuss practical problems involved in producing such fields, with particular reference to permanent magnets, and suggest a new approach to some of them. A method is outlined for calculating the field variation within the gap between cylindrical poles. The results indicate that if the pole surfaces can be made magnetic equipotentials, the inhomogeneity will be slight, even for a diameter gap ratio as small as 4:1, and easily removable by simple compensating coils. To make sure the pole surfaces of a permanent magnet are equipotentials, the pole caps may be laminated transverse to the field direction. A «magnetic filter» of this sort is much more effective than a solid pole cap of the same thickness. Given suitably fine-grained material for the final pole surfaces, there appears to be no reason why a rather small permanent magnet cannot provide a field uniform enough for high resolution spectroscopy. Preliminary measurements on such a magnet will be presented.