Cloudflare is a decent solution when you have a website that is perhaps a target for DDOS and your existing hosting provider doesn’t have there own prevention capabilities.
As far as performance, Cloudflare has some of the fastest DNS resolution on the market currently. I tested a number of Cloudflare hosted sites vs. AWS Route 53 and it blew them away. I was surprised how fast it was. They posted a blog entry recently about it.
The other component is the actual transit of the web data. It typically goes into the closet Cloudflare location, gets routed towards the origin server (via something such as normal internet / leased line / vpn?) and out connecting back to the origin server.
In almost all cases a direct connection from a browser to a server will be faster than running it thru someone elses network that often includes scrubbing and html altering capabilities.
It could also depend on how the origin server is configured. If it waits until the entire webpage itself is generated before transmitting, or if it starts outputting right away. A browser would start to receive data quicker and could process it. I would imagine with Cloudflare they need to fetch the entire HTML webpage so they can analyze / process/ optimize it before sending it back to the requester.
Rule of thumb - when you correctly optimize your application directly - it’s almost unbeatable.