Hi I'm Dave.
I can try to assist you with your question.
It does sound like what you are describing is a possible engine cylinder misfire. This can be caused by MANY things, although worn out spark plugs is the first thing to suspect if the engine has not had a tune-up recently.
The engine can stall due to severe cylinder misfire. It can also stall due to something more like a crankshaft position sensor that is malfunctioning. It just so happens that a malfunctioning crankshaft position sensor can also cause cylinder misfires. Worn out spark plugs can not only cause cylinder misfires, but can also lead to ignition coil failure and engine stalling.
Continuing to operate the vehicle with a cylinder misfire problem can also cause extremely expensive damage to your vehicle like destroying and plugging up the catalytic converters, which can cause even more misfires and engine stalling.
So, to put it simply, if your mechanic is telling you that there are cylinder misfire codes in your engine control computer, you have to start with the most obvious first. If the plugs are worn out you need to change them. Then if there are other failures as a result of the plugs being worn out, that will become more apparent after the plugs are replaced. If there are codes for things like the crankshaft position sensor, that should also be looked into as a separate (although related) problem.
Nobody can tell you EXACTLY what is causing all of the problems with your vehicle without first making sure that scheduled maintenance items (like spark plugs, fuel and air filter replacements, etc..) are all up-to-date. Only then, can you effectively go about eliminating any of the literally HUNDREDS of additional possibilities and combinations of those possibilities, one at a time, through proper diagnostic procedures.