I have noticed that there is a common chord progression that exists in a few variants: C, C#dim, Dm, G7. It's often changed by changing Dm to D to give the progression a little bit more spark. However, it's also fairly common to change the C#dim to Cdim. I am a bit surprised about how similar they sound in context. Changing a whole chord half a step usually have a pretty dramatic impact on a chord progression, but here it's more like just adding a 7 or something.
Is there any theory behind this? And how should I reason about which I should pick, apart from the obvious "what sounds best".
I wanted to describe the above progression with function notation, but I thought I'd just mess it up. Please tell me how to write it properly. I know it should be something like I, X, ii, V7 but what should X be?
As requested in comments, here are four samples to show how little impact it has: