A pro-tip I want to offer is something I've discovered on this run through with a new character.
Upgrade your equipment and buy items as much as you can before you buy levels.
If I had the stones to upgrade my weapons I would. If I had a big chunk of souls I would upgrade my pyro glove. I bought new spells over anything else. I would only up my stats if I had lots of souls and nothing to buy with them.
The result was I was 45th level after Anor Londo and I hadn't yet gone into the Darkwood areas. I had Ascended Pyro Flame +5, Lightning Estoc +5, Uchigatana +10, and Gargoyle Helm +5 (best helm pound for pound.)
And nothing could touch me. It's become like a starter level. Everything was one shot or two shot. I was stun locking the Darkroot guardians and killing them with one stamina bar. Sif was way too easy: Three Chaos Fireballs and maybe half a dozen swings of the katana. I used two estus the whole fight!
Because you get so powerful with gear you barely die! It means you save time and never lose any souls. Because I cannot upgrade or buy anything else that I want I ended up earning 20 levels in the Darkroot areas. I have not had to grind at all in this playthrough.
Also the lower your level, the more you get summoned. I see now there is no point in even having a character approach 100 level or higher. You can play a very effective role (like Pyro/Dex or Faith/Str) and be done levelling by 50th level, 75th level for something uber. A 100 level build is for a character that wants to do it all.
Levelling is the last thing you want to do - which is very counter-intuitive to a life-long RPGer like me. Learning the game is best, then equipment, then levels. Who knew?!?