Long render times are often easy to predict. It would take me about a half hour to design a thirty-second comp that would take a couple of days to render. If you are working on something that you know is going to use up a lot of resources consider implementing some workflow rules. Here are some suggestions:
Rule 1 - If you render looks like it is going to take a long time use the Render Cue and any of the Image Sequence Presets. Image sequences are much easier to fix if you have a rendering failure.
Rule 2 - Set a maximum render-time per frame limit (mine is 7 minutes) and if something is taking longer than that, redesign the project. I do this all the time on complex composites by knocking down motion samples, pre-rendering some elements, and watching out for particle systems that overwhelm the system.
Rule 3 - Consider a 3rd party helper like Render Garden or multi-machine rendering for complex projects.
I use Rule 1 on any project that has a chance to break a render because successfully rendered frames in an image sequence can be skipped when you have to start again so no rendering time is wasted. Rule 2 is set to control my OCD when it comes to making perfect composites and motion graphics. I don't real-time preview hardly anything at full rez, I try to figure out the most efficient way to work around complex problems, and I pre-render temporal effects all the time to speed things up. I also watch out for inefficient codecs in source footage. You can double or triple your render time easily if the source footage is an unsuitable compressed interframe format. For about 80% of my comps, I use Rule 3 so I can keep working in AE while the machine is rendering. Nobody pays for render time anymore so I don't sit around and wait for things to render. They render in the background whenever possible and I keep creating.
I hope these suggestions help. As the others have said, unless we understand your workflow it's pretty hard to give you any meaningful suggestions that will solve the problem.