With the emergence of Network Function Virtualization (NFV) and Software-Defined Networks (SDN), Service Function Chaining (SFC) has evolved into a popular paradigm for carrying and fulfilling network services. This new networking and computing paradigm enables virtual network functions (VNFs) to be placed in virtual machines/software entities on a network of physical devices elastically and flexibly with lower capital and operating expenditures. However, for cloud service providers, how to migrate VNFs in NFV-enabled networks for more flexible services is a critical issue that needs to be addressed. Currently, research on VNF migration mainly focuses on how to migrate a single VNF while ignoring the VNF sharing and concurrent migration. This paper assumes that each placed VNF can serve multiple SFCs. We focus on selecting the best migration location for concurrently migrating VNF instances based on actual network conditions. First, we formulate the VNF migration problem as an optimization model whose goal is to minimize the end-to-end delay of all influenced SFCs while guaranteeing network load balance after migration. Next, we design a Two-Stage Hybrid Genetic Evolution (T-SHGE) solution to solve the VNF migration problem. Finally, we combine previous experimental data to generate realistic VNF traffic patterns and evaluate the algorithm. Simulation results show that the SFC delay after migration calculated by T-SHGE is close to the optimal results and much lower than the benchmarks. In addition, it effectively guarantees the load balancing of the network after migration.