My brief experience with C2 has led me to deduce that the biggest resource hog are often the collisions. I've found you can drastically improve performance by:
Playing with the collision boundaries in the image editor until they are as small as you can get away with to function correctly.
A 32px square with collisions set to bounding box causes much more stress on the fps rate than the same square with the collision boundary set to (1,1),(31,1),(1,31)(31,31).
Try rotating a square 45 degrees if it doesn't affect the objects interaction it can reduce collisions.
Turn off collisions on objects that don't need them.
Make sure all objects that can collide are on the same layer.
In layout view check the View tab/show collision polys option to see how the objects interact and overlap at rest. Look especially for overlaps and ways of minimizing them
Don't use complex collision polys if a pinned rectangle will suffice.
Check your code for extraneous collision checks.
Use your debugger all the time and the built in profile tab which tells you pretty well where your resources are being used because we've assumed the code isn't leaky, it might well be and the debugger/profile tab will help you nail it.