Like David said, rinse the spounge off after every panel before it goes back in the bucket. That way you will have no dirt in the bucket when you are done. On a filthy car, the soapy water should still be clean, if it isn't then you did not rinse the wash mitt off good enough.
I always soak a car down for 5-10 minutes with water and make sure all the dirt is penetrated heavily with water so it loosens up very easy when washing. I spray all the jambs to get all the loose dirt out. I wash the roof, rinse car, glass, rinse car, hood rinse car, trunk rinse car, tops of doors, rinse car, bottoms of car gently one section at time, rinse car, rear, rinse car, nose, rinse car. I wash my mitt after every panel before it goes in bucket. I know it sounds like a long process, but it goes fast. After washing 1000's of cars like this with no issues, I finally give it the safe wash method.
Your worst enemy is a dry MF on dry paint.