If you have a grease built up on a window, the easiest thing to do is put some dish soap on a cloth and wipe it down. Dish soap is perfect for cutting through dirt and grime. Once you have the tough stuff removed, you'll need to use the Windex and lots of paper towels or, better yet, shop towels. I far prefer shop towels for cleaning my windshield on the inside because they are extremely tough and don't leave fibers. I personally can't stand using microfiber cloths on the interior windows in my car; they dirty too quick and end up just smearing the film around.
I've used dish soap before, and it did ok but you still have to go back over it with the windex. I've actually found that using vinegar on windows has worked quite well. I use it with the shop towels, as they don't leave the fibers behind that traditional paper towels do. You can pick them up at any auto parts store, or even Wal-Mart (they're the blue towels in the auto section). The vinegar cuts through the grime, and then I also like to go over it with the Rain-X product because it helps to prevent the glass from fogging up in the winter. I've also found that in using the rain-x, I don't have to clean my windows as often - a nice little bonus for me, as I absolutely hate cleaning my car....I try to get my kids to do it, and sometimes bribe them ;)
You need to use a window cleaner that turns to a powder. Apply very thinly, leave to dry, then take off with a clean cloth. These are normally called a polish - and are very similar to car polish.
You can help by turning a cars heater on to dry it quicker, but it only takes a few mins anyway.
Works on all glass
Depending on the degree of dirt/film, using a Clay Bar may be the solution.