Low - Mid 30s is usally normal for idle temps.
But, sometime idle temps can be reported inaccurately. So do not rely too much on them.
The best way to know how well your cooling solution is doing, is start up and run a Prime 95 stress test for a while.
Give it maybe 15 or 20 minutes.
Then check your CPU tempratures after it has been under that full load for a little bit.
This will actually give a bit better idea. Since CPUs many times report tempratures more accurately the closer they get to TjMAX.
Besides, if you think about, what difference does it make what the tempratures are when the PC is doing nothing?
What matters most are the load temps.
If it idles and 25C but cant hant handle a load without overheating or getting close too, its all pointless.
Ideally, under a FULL load:
For Intels, A MAX temp of 60-65C will be fine.
For AMDs, I want to say its 50-55C . (Please correct me if Im wrong here, been a while with AMD CPUS)
Obviously lower is better, but if you can stay under these temps when the CPU is under a Full load, you'll have no problems what so ever.
As far as the Speed Fan TEMP of 128C, its a reference to a sensor that doesn not exist on your set up.
Dont worry about it, its a common problem with speedfan.
Besides, if anything was really 128C, you would have known it well before now.