When it comes to workflow I am still in the process of reorganizing mine. It has taken some rearranging at the foundation due to resorting to filter packages more as of late as well as making the switch to Nikon.
One of the fundamental first steps thought is trimming the fat, that is after importing and backing up my files from a shoot I have gotten to making several passes through all the shots from a shoot and using the Library filters in Lightroom to bring together only the shots I feel are the best ones I captured that shoot.
Everyone has their own method of doing this, as always I suggest experimenting and seeing what works best for you. There are a lot of redundant ways to do it to cater to each photographers tastes and needs.
In my case I look over the photos quickly in the Library tab in Lighroom. I make several passes starting out with the out of focus shots, under exposed, over exposed, motion blur etc etc. Mind you sometimes these type of shots aren't unwanted, however in the general sense that's what I watch out for. I set "rejected" flags on these photos. It's nice, simple and quick since I can just use the keyboard to scroll between pictures and set flags. At the end I can just Filter Lightroom to display the rejected images and delete those altogether.
After that I do another pass through, this time paying a bit more attention to actual elements within the shots. I look for big distracting elements I may not have caught, bad framing, lack of focus etc etc. This pass through is usually pretty quick as well. I generally also have a habit of setting these as rejected. I tend to be quite conservative in terms of what I flag for rejected since I will be deleting it so the criteria for getting the rejected flag is usually pretty blatant.
I make it a habit to delete the photos that were rejected by this stage. For the next passes I continue to flag the unwanted pictures as rejected however I do not delete them anymore. I set the filter to only display flagged or unflagged photos. Now when I set an image as rejected it will not show in my library (but is still there). It helps to clear up the clutter and distractions as I go.
From here on in all the passes I make are comparing the shots around it. I match up similar shots and keep the one I feel is better. These passes of course take a bit more time and involve zooming in and checking the smaller details.
Eventually after a few more I bring it down to a much smaller number than what I had originally started with, making sure I only bring my best shots to the table. Not only does this create an environment that's much easier to work in, it also helps to tie the shoot together. I find personally that this sequence works a lot better for picking out the best shots in a shoot rather than going through all the shots and just picking the best ones. You end up putting a lot more thought and consideration into each individual shot this way. It also makes for a better presentation when handing a CD of proofs to a client. Although, in that scenario I end up being a lot more liberal as to what I don't reject.