From a purely theoretical standpoint, 1080i will always be BETTER than 720p, simply because you will have FAR more resolution available in a 1080i signal than in 720p, and this is a FACT.
The complications arise because
1. You MUST have a TV capable of displaying a 1080 image (i or p). If the TV can't show 1080i, you'll never know what it looks like.
2. If your TV is capable of displaying a 1080 image, then it better have a good deinterlacer, the magical black box that gets the interlaced signal and makes it progressive (at least on modern displays it will be progressive).
On most mainstream TVs, the included deinterlacer is rather average will not do the fancy deinterlacing found in the higher end (e.g. the Pioneer Elite series) TVs. This was especially true of the earlier HDTVs. This led a lot of people to believe that the 720p singal was better than the 1080i signal because the deinterlacer mucked things up.
The truth of the matter is though, that a 1080i signal, when passed through a good deinterlacer should give you the SAME result as a 1080p signal. Since we can all agree that a 1080 singal has more resolution than 720, it should be the case that a 1080 signal is BETTER than a 720 one, given the previous two points I just made.