I have the 300D and have printed a 20X30 from an uncropped shot and there is no pixelation. However, which camera you choose depends on what you will be doing with it. As for bells and whistles, the 300D has few, most stuff is non-customizable unless you get a hack. That can be good or bad. If you are just shooting for the heck of it and don't really want to get into the nitty gritty of photography and digital cameras then the 300D will be great for you.
Other shortcomings that I don't like about the 300D are it's lack of AI servo in manual modes, small buffer and low fps. I shoot mostly wakeboarding and love getting big sequences, but right now I can only get 4 shots at 2.5 fps. That may not be a big deal to you. Also, I shoot 99% of the time in manual modes, and if I'm shooting wakeboarding from the side I need the AI servo all of the time, not just when the camera feels like it. The 350D has AI Servo, 2.8fps and a much larger buffer if that matters.
Don't get me wrong, the 300D is an awesome little camera for the price and very capable of taking great photos. I've had mine since May and have taken nearly 13,000 photos with it, and the only times it has held me back is when I shoot wakeboarding from a tube/chase boat or sequences. I'm trying to decide if those reasons are enough for me to upgrade to a 20D or just deal with it.
Ultimately, beyond fps and customization, the real quality of your photos comes from what lens is attached to it and the person pressing the shutter. I upgraded from a Canon 75-300 f:4-5.6 to a Canon 70-200 f:4L and am loving it. I have also gained knowledge and experience with photography and am getting a little better with each attempt.
This post is probably worthless... but you do need to figure what you will be shooting, because that is what makes the difference in what camera is good for you.
I'll shut up now.