Frames are a good thing if you use them well and right. It can be a pain, but the only way to really make frames look good is to have them fit for whatever is needed PERFECTLY, not oversized, no bars showing to seperate or anything like that...which could also mean setting margins to 0.
Frames as a rule try and avoid. Tables or divs are better at displaying content accross platforms. They can mentioned before cause problems with browsers and not be displayed, especialy inline frames.
Although it can duplicate conent i.e internal navigation panels, if content isn't in frames then it stops users arriving to your site at a part that should be contaned within a frame.