When refinancing, don't take the first offer that comes around. Instead you should actively compare both interest rates and lenders.
These days most people request a Good Faith Estimate (GFE), but have no clue what to look for on the GFE. Make sure you request a GFE that has ALL fees estimated and disclosed. This includes: origination points, processing, lender, appraisal, title, escrow... ALL FEES... especially the Yield Spread Premium or YSP.
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.