Electrical conduction through relatively low resistance filaments has been proposed as the mechanism whereby current-controlled negative resistance (CCNR), voltage-controlled negative resistance (VCNR), switching and memory effects take place, particularly in amorphous insulators and semiconductors. Two types of filament are considered: uniform filaments (in which the applied voltage is assumed to drop uniformly along the filament's length) and non-uniform filaments (in which the applied voltage drop occurs primarily at a higher resistance flaw within the filament). By regarding heat dissipation as taking place either uniformly or preferentially at flaws, depending on the filament type, expressions are derived for the temperature within the non-conducting insulator or semiconductor regions, filament or flaw temperature, and voltage at which a filament will cease to conduct. It is shown that for uniform filamentary conduction in thin films the conduction in individual filaments is influenced by the number and proximity of neighbouring filaments, while flawed filaments are essentially isolated from their neighbours. An illustration in the application of the model is given (in the case of uniform filaments) for an assembly of conducting filaments, and various filamentary parameters are calculated. Experimental evidence for a range of different systems is reviewed, and shown to be consistent with the model.