Firefly algorithm is a new meta-heuristic inspired by a natural phenomenon of fireflies' flashing light. Firefly algorithm has been successfully applied to solve several optimization problems. However, It still suffers from some drawbacks such as easily getting stuck at local optima and slow speed of convergence. This paper proposes a new hybrid variant of discrete firefly algorithm, called HDFA, to solve traveling salesman problem (TSP). In the proposed improvement, the balance between intensification and diversification is achieved by utilizing the local search procedures, 2-opt and 3-opt, to improve searching performance and speed up the convergence. In addition, the genetic algorithm operators, crossover and mutation, are added to allow performance of both local and global search respectively. The validity of HDFA is verified by comparative experiments using eighteen TSP benchmark instances from TSBLIB and compared to some well-known algorithms. Results in the conducted experiments show that HDFA has significantly better performance than the performance of compared algorithms for all instances in terms of solution quality.