displaying it. That is easiest, you create crosshair umg widget. Add this widget as widget component to character. Line trace where player is aiming and put that widget in world 3d space at that location. Then you make widget screen space so its always visible.
second problem is aiming. You need to get forward vector of player camera. and trace that line. where it hits its actually spot player is aiming. Now if your game is a bit of topdown, it is not that easy because any time something is between player and camera (door frame for eg) aiming spot will be behind player (in between of player and camera). To fix that you need a bit of logic, ie if aiming point is behind player, calculate where forward vector of camera hits the ground and pick thatlocation instead of line trace location.
last problem is animating character so it actually aims at location of player aiming, for that you need animation blueprint and aim offset.