A method has been investigated for the determination of Cd, Hg, Pb and Tl in coal and in coal fly ash, using slurry sampling electrothermal vaporization inductively coupled plasma mass spectrometry and isotope dilution. The slurry, 25 mg ml−1, was prepared by mixing the powdered sample (≤36–45 µm) with acid solutions (nitric acid for coal and nitric and hydrofluoric acids for coal fly ash) and submitting the mixture to an ultrasonic agitation, letting it stand afterwards in a water bath at 60 °C for 2 h. An ultrasonic probe was used to homogenize the slurry in the autosampler cup just before its introduction into the graphite tube. The best conditions were determined regarding analyte sensitivity, furnace temperature program, amount of modifier, acid concentration, gas flow rate and particle size. For Hg, the pyrolysis stage was omitted and a low vaporization temperature was used (450–1000 °C); the residual matrix was eliminated in the first step of the following cycle. The modifiers used were: Pd for Cd and Tl; Au, Ir or Pd for Hg; Ir or Pd for Pb. The accuracy of the method was checked by analyzing six certified coal reference materials (SARM 20, SARM 19, BCR No. 40, BCR No. 180, BCR No. 181 and NIST 1630a) and one certified coal fly ash (NIST 1633b). With one exception (Hg in BCR No. 180), the found concentrations were typically within 95% confidence interval of the certified values, or close enough to the recommended values, as long as the samples were ground to a small enough particle size. The limits of detection were typically around 0.08 µg g−1, 0.03 µg g−1, 1 µg g−1 and 0.02 µg g−1 for Cd, Hg, Pb and Tl, respectively. The precision was also adequate with relative standard deviations of usually <5%.