I'm in the same situation and until 6 weeks ago lived in a complete tip: almost channel 5 documentary standards
There was other factors like MH going on too but my main excuse was working full time and not having chance to keep on to of it. I don't have children but do have 2 dogs and hadn't done any house work for nearly a year, so you can well imagine the mess.
Anyway I solved it. It wasn't easy and it took some graft but I now live in a gloriously clean house and no longer panic when people want to come round 
This is what I did:
Took a week off work and spent it tackling 1 room per day. Start in one tiny corner of the room and just keep going until the room is done. Don't even think about the next bit of room until the first bit is done. Don't worry about the amount of rubbish you're throwing out, just stack it up somewhere and deal with it at the end by taking the whole sorry lot to the tip.
I ended up with nearly 40 binbags absolutely bursting full of crap to take to the tip. I'm sure your house isn't nearly as bad as mine was though! The rule is: Only keep something if it has a place to live. Everything MUST have a home.
Next plan your week so you're only doing MAX 20 mins of housework a day, plus 1 1 hour session at the weekend.. To do this, split your house into 3 categories by room: High traffic rooms, medium traffic rooms and low traffic rooms. High traffic need at least 5 minutes of your time per night for a quick tidy round etc, plus 2 sessions or so a week of 10-15 mins for floor cleaning. Then the medium traffic rooms probably only need a go at 2-3 times a week. Low traffic are once a week.
To do mine I wrote all the jobs out on a whiteboard and moved them about until I got a routine I was happy with. Put the board somewhere you will see it every day. For me this was on the side of my fridge.
Then set yourself 1 "wildcard" slot of 1 hour each weekend. This is for projects like organizing cupboards or for bigger, less frequent jobs like cleaning the oven etc. Have these jobs on a rotating basis, so one week it's a project, the next week it's cleaning the oven, the week after it's washing the curtains etc etc.
This way, you're only doing 20 mins of housework a day and 1 hour each day at the weekend but still manage to have a clean house :)
We also have a rule in our house where one of us does the cleaning, the other one does the laundry and cooking. Ends up being a pretty fair division of labor :)