Welcome to the forum. As we cannot see your car, it might be a good idea to give a bit more detail. What engine and transmission do you have? What does the idle do, from cold start until the engine warms up? What is your normal hot idle? Is your check engine light on with the key on, and off once the car is running?
Normally, surging is caused by the computer gaining and losing control of the idle circuit. This often occurs due to vacuum leaks. The hot idle of your engine should be 800 rpm or so. An easy way to check for vacuum leaks is to take a pliers and pinch each of the vacuum hoses you see. None of those hose pinches should cause a decrease in idle, with the exception of the vacuum hose that runs from your air filter, through the MAF, to the idle speed solenoid. If you find a circuit where the idle changes, you have identified where your vacuum leak is…it could be the hose, gasket, connections, etc. Try that and see if you get any result.
Note that any advice you get will assume that your engine is timed and tuned properly, and that you haven’t fiddled around with idle screws, etc.