In comments, I see you stated it is a Truvativ Crank... The description of your problem sounds like it may be a couple problems. If the bearings in the BB are worn out, it may make any kind of "clunky" feel. But what it sounds like to me is it was ridden with crank pinch bolts loose for a bit and the BB/Crankarm interface might be worn down one way or the other. It's entirely possible you may need to change out either. You said you took it to a shop, may be worth getting a 2nd opinion if you weren't happy with their answer. And this time, ask them to show you what's wrong. As a mechanic, I was never against showing people, "Here's the wear, this is why we recommend changing this". But be aware that at that point, the shop has invested time and money(in employee wages) in that repair. Don't get the answer from the shop, then do the work yourself. No shame in supporting your local shop when you can't diagnose a problem yourself.