I've always learned that C is the fastest (albeit less readabiliable [play on accountabilybuddy]). So should CGminer be fundamentally faster than the python-based mining? or is most of the compute carried elsewhere?
Discuss.
There isn't much to discuss.
A well-optimized C based CPU miner should be faster than a Python based CPU miner.
However, CPU mining is mostly obsolete (due to reward being lower than power cost).
With GPUs or FPGAs or ASICs, all of the Real Work is being done elsewhere, and the C or Python (or Java in the case of Bitminter's custom client) miner code is just feeding work to the hardware that does the calcs and relaying results back to the pool, so there's pretty much no difference in hashing speed.