If this is a valuable painting, or old, I would suggest you seek advice from the people who clean and conserve paintings at your local museum or art gallery. If the painting is valuable only to you, as a start you could use a warm water and mild detergent solution. This shouldn't do any harm and may be all it needs. Dip a cotton ball in the mixture and wring out as dry as possible. Choosing one spot rub the picture gently until the dirt/smoke stains start to lift. Discard the cotton wool and move to the adjoining spot with a new piece of almost dry cotton wool overlapping the clean spot a fraction. Keep changing the cotton wool as soon as it starts to get dirty and move methodically over the whole picture. I did this with a Victorian scrap screen and it removed loads of dirt but I just left it then - I didn't want to damage that patina of age - I certainly wouldn't have put anything stronger onto it without expert advice.
Login using the form on the top of the page to post feedback (if you are a registered user). If you have not yet registered, click here to do so. It's FREE!.