I'm running a codeigniter site with about 11K files.
I've heavily modified the codeigniter's basic structure for my needs. For instance I have 3 applications with 3 front controllers using the same system files. I'm using smarty as my templating engine. I have rich php web apps powered by jquery and prototype/scriptaculous. I use form validation, authentication, active record, emailing, etc. etc.
My experience so far has been very positive.
Once you get a (real) templating engine like smarty pluged into codeigiter you have all the power that you'll need for medium to large sites.
You have to think about organizing your site in to large 'metagroups' as the 'controller' structure in codeigniter expects such behavior. ('blogs', 'merchandise', 'forums', etc..)
CI is very easy to add plugins for.
The framework simplifies alot of crap you would otherwise need to hand code. It's fast, simple and configurable.
My one big complaint with CI so far is that it's not very multi-application aware. The default layout assumes you're running 1 application. In my case I have a global application with global file that can be pulled into all running applications. However, this could be solved more elegantly. Additionally you have to add a little extra fluff to switch between front controllers.
My favorite aspect of CI is the easy of active record on a MySQL db. It's dead simple to set up a DB connection and get active record queries running.
I would say that it's pretty easy to get started with. Just make sure you shop around and figure out how to plug smarty into your app. You CAN use the default 'view's of codeigniter, but the minute you need if/else logic in your templates you're screwed.
I set up a 'templates' and a 'content' area in each app that I can fill with smarty templates and static content respectively. The rest I can pull from a DB connection.