perfect diet for gaining muscle?

I’m 16, male, 5’10-ish, 140 pounds-ish. (high metabolism). So lately I have decided that I hate looking at myself in the mirror. I’m skinny, but I always find myself flexing the muscle I don’t have and admiring the 6-pack abs I don’t have. Its time to actually get those muscles and abs. So I hate to say it, but it looks like I need a good diet for max results. Can you please tell me what foods I need to be eating and what foods I need to stay clear of? Thanks. Also, is this a good workout plan:
Monday, Wednesday, and Friday do the following workouts: Bench, squats, bicep curls, deadlift, shoulder press, row, calf raise, ab workouts.
Tuesday and Thursday- run!!!

How does it look? if it looks bad then please let me know what a good workout program I could follow. Thanks!