Wheel cleaning is like cleaning your teeth. You can’t expect to just blitz them once in a blue-moon and assume they will come out looking good.
Each time I wash my car, I clean the wheels thoroughly; but every now and then, I like to do a deep clean, i.e. jack the car up and take them off.
The metal from the wheel brace can scratch the nut recesses, so I decided to heat-shrink mine.
The thin layer of plastic is just enough to protect the ressesses. (don’t forget the locking-wheel nut attachment too)
The best cleaner I have found is Bilt Hamber Auto Wheel Cleaner. It goes on clear, and then turns a purple colour when it reacts with brake dust and grime.
Normally this would be adequate but I wanted to do a deep clean, so making use of a little T-Cut to remove the stubborn tar marks, and the results are amazing.
It’s good practice to wax the wheels after. Just like waxing the bodywork, it will protect the wheels in the long-term, and make cleaning effortless next time.
I prefer to use Collinite no. 845 Insulator Liquid Wax
The end results.. these wheels are a year old and covered ~5k miles and still look like new.
and don’t forget to Torque the wheels nuts up. 100nm should do it.
Edit
3 weeks and a few hundred miles later..
A quick spray of the cleaner and then a rinse off. No scrubbing required.
This wax is great stuff. The water just beads and rolls off.
As-new wheels in minutes.
Edit
also see Cerbera spider wheel cleaning revisited