While Adiran is dead on the money regarding job titles, there are probably some things you could call out as differences;
- Consulting is about bringing in outside expertise and advising the client how to address particular problems. Usually you can also buy the consultant to faciliate a solution as well.
- Business analysts play a role in analysing and understanding a problem, usually within a particular domain, and often associted with projects or IT system lifecycle management. BAs also describe what things must be addressed in order to solve the problem (requirements) and many also get involved in faciliating bthe soluton via change mangament programs.
Where is the difference? It seems to be to be in bringing the expertise in from an external source.
In larger enterprises you often find the role (maybe not the job description) of internal consultant where other business units provide consultants to managers to help with problems.
Business analysts can often play the role of internal consutlant in this context, and in fact should be acting as internal consultants when managing requirements.
Many of the skills you would find are similar. Typically a BA might have more technical expertise and less financial expertise than a consultant, but that reflects the career development process of the role, rather than what the role requires.