Cleaning when I think I should, not to often, but I do it once or twice a month (so every six shooting sessions or so).
Have used brake cleaner with big success, take off the grip panels, just spray it in, brush over it, and then spray the dirt out, oil it.
Now a friend of mine, who is cleaning his pistol after every shot or so ( ) gave me a can of cleaning benzine (right term?), which does the same, just without spraying.