as per first few posts, preparation is everything. Frame needs to be dipped to remove all of the corrosion and gronk within the frame and not just on the outside, sand/shot blasted to get it perfectly clean and only then powder coated. Many processes involve 2 x powder coat and baking to add a transparent layer on the outside for extra shine and resilience. A good shop will also ensure all of the various threads and holes are properly protected so they don't get powder into them. I have chatted to the folks that do mine and they hate doing modern frames and motor bike frames for the latter reason - i.e. there are many more holes and fittings to cover than on an old steel bike frame that doesn't have so many apertures and extra bits bolted on.
Durability wise, powder coat wins hands down over enamel and it is also far easier to clean- generally just needing a wipe.
Drawbacks are the lack of arty options, fades etc and the fact that done badly it can look lumpy and frankly awful. As with anything, get reviews before you pick the people to do the work and also talk to them about what options and processes they are going to use. I would not be able to afford to do the restorations I do without the cost effective nature of powder coating either, since painting the frames would be prohibitively expensive and mean I would lose a shed load of money on every one, versus just about scraping even if I am lucky.