I use break cleaner on some of my guns.
It is bad for: most plastics, wood finishes and painted aluminum/steel.
It does not hurt: blued steel, parkerized steel, anodized aluminium, bare metal.
The good things about it, it's cheap, it removes every thing and you can get it at lots of stores.
Bad thing, mentioned above, it will stink up the inside of your house and it gets every where.