Pull your credit report from the bureaus and review it for any negative items (late pays, collections etc) and inaccurate detail. Try to dispute negative items and remove them from the report. If required pay off any unpaid debt. Otherwise, you won't get a low rate and may not even qualify. Of course there are lenders in the subprime market who may offer you a bad credit refinance loan, but it's better to avoid them as they'll possible charge higher rates and fees.
Start with your current lender. If you're a good customer-you hold a sizable mortgage, pay on time, and maintain good credit-your existing lender will probably do everything in its power to keep your business. The company may cut you a break on fees for things like appraisals, surveys, and inspections if the information is current and you meet other requirements.
Lenders like pristine credit reports. If you have a bunch of open credit card accounts that you never use (and who doesn't?), consider closing them. It will boost your credit score and make you a much more attractive borrower to a lender. Then, a month after you've closed your accounts, go over your credit report with a fine-tooth comb. It should read that the accounts were closed at your request. (You don't want lenders to think someone cut you off and that you're a bad credit risk.)
Be Patient. Processing all of the paperwork that's required for a new loan takes time. Be patient while your loan moves through the system. Protect your credit score by paying your bills and making your mortgage payments on time and not taking on any more new debt than you absolutely have to.