The power windows on my 98 M Roadster got to where they wouldn't roll down without help (a hand on top pressing down while button was pressed). A few searches in the forums revealed that continued use in this condition would cause the motor(s) to fail which is a $400 dollar expense (per motor). So I decided to tear it apart to see what I could find.
Eventually we (my wife) found that the grease, in 2 of the rails that the window raising parts slide on, had turned to a tar like substance. We lubed up the rails and the windows started functioning normally.
Getting the door panel off is no picnic, but we managed. (Getting the door panel back on is an even better trick, but we managed that too.)
Here's the procedure:
1. Open the door, and put the window down.
2. Lift the rear of the door handle surround and push forward to remove.
3. Use a flat-head screwdriver to lift the panel that has the electric mirror controls (driver's side) or a blank plate (passenger side).
4. Remove the torque (25) screw that sits beneath the recently lifted cover plate.
5. Pull the door panel (with fasteners) from the door. (BMW recommends using their special tool. I used a couple of butter knives.) Slide the knife in-between the bottom of the door panel and the door, then slide horizontal until you bump up against a fastener. Slide the other knife in on the other side of the fastener, then pry it out. It can be done with your bare hands, but that sometimes results in ripping the fastener out of the door panel and leaving it stuck in the door (non-optimal).
6. Lift the door panel up out of its track (on top), but don't go too far with it as the speaker wires are still attached. (Mine has about 6 inches of room to play with.)
7. Disconnect the speaker wires.
8. Remove insulation. The insulation is attached to the door with some tar like substance. (My hand in the picture below is between the insulation and the door.)
9. Grease the rails. Lower the window until you can access the black rails (see photo). I used Phil's Waterproof Grease.
Assembly is the reverse of dis-assembly.