I am getting warning while making existing pick list field as required.
Making this field required may break existing API or Apex requests that do not supply a value for this field
Can anyone help why i am getting this warning?
If you make the picklist required on a page layout (instead of on the field definition), you won't get that warning. And if the page layout is the only place that you want that field to be required (instead of also through api calls and apex/visualforce/lightning), that's probably the way to do it.
If you decide to use a validation rule to make a field required,
It will not show a red bar next to the field, and will instead show an error message after hitting save (not as user friendly).
It will impact apex and test classes, but that's not necessarily a bad thing. If the field needs to be populated under certain circumstances, than that's the way it needs to be however the record is manipulated.