Controlling a complex nonlinear system has always been an important problem. A neuro fuzzy controller may be an appropriate controller for such systems. There have been always problems with large number of neurons which cause heavy complex computations in neuro fuzzy controllers. In this paper, a variable structure neuro fuzzy controller is introduced to prevent number of neurons from rising. The proposed variable structure controller, adapts itself on-line to the system. Therefore, because of the adaptive structure, there is no need to have a large number of neurons. As a result, calculations and controller complexity will decrease in this structure. The proposed controller also uses an improved gradient descent method to update different varying parameters. In this improved method, adaptive learning rates are used to prevent parameters getting stuck in local optima. Improved gradient descent method also takes the advantages of Lyapunov stability method in updating the parameters. The use of Lyapunov method in updating the network parameters will guarantee the stability of the controller, too. A complex nonlinear time delay system is introduced in this paper to evaluate the proposed variable structure fuzzy wavelet neural network controller. Simulation results illustrate the efficacy of this new controller.