I use TSP in a solution of warm water. I use two clean 5 gallon pails and two clamshell sponges. This task is easier with two people, one washes with the TSP solution, the other comes behind with clear water and rinses the wall down with the sponge. Change the rinse water often.
When your finished, you'll probably need to repaint. Start by sealing whats left of the smoke stain in with a stain killing primer. I feel that the easiest to use it Brunning's "Grabber Plus". It's latex so it cleans up easy, and it goes on just as easy as any latex primer. A word of caution about this stuff, whatever you get it on and allow it to dry, it will stick to like burnt tomato on your best cookware. You'll never get it off, so use masking and dropcloths, use some caution.
Once your done priming, you can repaint with any quality paint. I prefer Benjamin Moore's materials.