There is probably no "best" way to clean shotgun chokes! Shooters just know that shotgun barrels and chokes get dirty because of the carbon deposits from the combustion gases, lead streaks from the unprotected pellets (when a shot shell without a protective wad is used) and semi-melted plastic particles from the wad itself.
The traditional way to clean the chokes is the old standby using a shotgun bore brush for the gauge of the barrel/choke, cloth patches matched to the gauge of the shotgun, a good bore solvent and a sturdy shotgun cleaning rod with a patch jag that will not bend or break. As for the bore brush, there are those with plastic bristles available as are also the phosphor bronze and stainless steel. I prefer the tornado-style with continuous loops as opposed to the cut bristles. Many shooters also wrap a cleaning patch around the brush, apply solvent and clean away.
This also brings up the issue of cleaning the chokes while in the barrel or remove them each time. There are a lot of shooters out there that just leave them in for a season and clean the choke in place, so to speak. Nothing particularly wrong with this, but make sure the choke threads have a liberal amount of choke grease (my preference) or oil so that you can remove the chokes at the end of the season without taking the gun to a gunsmith to get them removed!
As most know, there are liquid cleaners on the market that do a great job of removing carbon and loosen up the plastic deposits. The procedure is simple and usually entails using a relatively thick walled plastic jar, filling the jar up above the length of the chokes used and leaving the chokes overnight. The next day, use the bore brush and rod and usually the crud will come right out. Just be sure that the solution you use will not damage and plastic "bands" on the chokes used to identify the constriction.
Now, all the cleaners out there in my experience do a good job of removing the crud from chokes. But, let’s state reality here...don’t expect that a new choke will clean up back to "new" condition! The metal that is used to make the choke (steel, stainless, etc.) all have minute’ pits in the surface and it is practically impossible to remove all deposits or "stains". You could use a grinding wheel to get them off, but I consider that drastic for what you get in return and you will probably ruin the outside surface of the choke!
One other cleaning method that is not discussed much, but works very well is to use an ultrasonic cleaner to clean your chokes. A customer that uses BlackBore chokes says one of the small units available from any one of the hardware-type stores works great. Add a little Dawn dish detergent, hot water and let it go for about one half hour. Works like a charm!