Birchwood Casey Gun Scrubber.
It's works very well, but it's expensive. Non-chlorinated brake cleaner as found in the auto parts section of your local mart is the same stuff and much cheaper.
Note that if you use either Gun Scrubber or brake cleaner on a gun, it completely degreases whatever you spray it on. So, make sure you put a light coat of oil on when you're finished.