Well, 'how long should I drive' is really dependent on how tired you get.
We've made the trip at various times from Burlington County...not very far from Princeton, so here's my suggestions.
You're leaving at 5pm from Princeton, so you KNOW how horrible the Route 1 traffic is (husband works off Rt 1 in Plainsboro, so well-aware of conditions!).
Route 1 to I-295 is the logical choice, but there is some significant construction going on now from Bordentown south. The northbound lanes are traveling on the southbound side; traffic is limited to two lanes in either direction. Its ugly at times. I would get yourself to Route 130 south and work your way to the NJ Turnpike south to Delaware. I'm not always a fan of the Turnpike...but there's no construction going on there now and its really a much 'cleaner' drive.
Take the Turnpike to the Delaware Memorial Bridge and get yourself on I-95 south.
Now, you have to expect traffic a good portion of the way. Its rush hour AND a Friday. There is going to be significant traffic in Delaware with folks headed to Ocean City and the beaches along Delaware. The 9 mile stretch of I-95 in Delaware is going to be crowded with that traffic looking to exit to Rt 1 and the beaches, as well as the back up at the toll plaza. Pack your patience.
With any luck, you'll make it to Baltimore around 8-8:30pm and hit DC 40 minutes later. Keep driving to get yourself south of DC!! If you find yourself getting tired, there are a ton of nice hotels at the Fredericksburg VA exits, about an hour south of DC. Not tired? Richmond is another 60 or so miles south, Emporia another 110 or so. Not sure I would push it much further on top of a full day of work.
This website is a great resource for lodging and other information regarding the I-95 corridor:
http://www.i95exitguide.com/lodging/index.php