When refinancing, don't take the first offer that comes around. Instead you should actively compare both interest rates and lenders.
Resist "no cost" refinancing. No cost doesn't mean free. On the contrary: The closing costs are usually bundled into the new mortgage, which means you pay interest on them. The fees associated with a 30-year mortgage could cost you more than double what they would have had you simply written a check for them at closing. Or, if the costs aren't bundled in, you'll be charged a slightly higher interest rate. Either way, the lender wins.
If you know that you will be moving in 3 to 5 years, you might want to consider refinancing to a 3 or 5 year ARM (adjustable rate mortgage). These loans typically have a much lower rate that a traditional fixed rate loan such as a 30 year fixed, but they do have a fixed rate for the first 3 or 5 years of the loan. This will enable you to benefit from the lower rate, but you won't ever have to worry about the risk of a rate adjustment because you will be selling the home before the fixed-rate period ends.
If you do not plan on staying in the house very long, refinancing may not be in your best interests.