J.G.
I've found rewards work much better than punishments. If you know you need to leave the house by 8:00, you could be almost ready to go at 7:30 and tell him that if he gets dressed in time you can read a book together before you go. Think of something that will motivate him. (I know it's terrible, but for my son it was Poptarts! I hardly ever allow them, but it makes for a great reward when I'm desperate!)
My son is almost 5, and it was a battle many mornings before preschool. It helped to pick out his clothes the night before. We set them on top of his dresser. He knew he had picked them out, so when I told him it was time to get dressed he would run into his room and get dressed.
One of the dressers is about the same height as a changing table. I usually pick up my 2 year old and have him sit on the dresser. That's when I put on socks and shoes. It's a very manageable height for me.
Good luck!