This has been like this ever since i started playing. I have some small tips to improve things, but the netcode in this game is programmed very, very poorly, and on top of that it uses a rollback method which honestly shouldnt be used if you want to do live miltiplayer, fine for everything else like chat and leaderboards though.
Use a wired connection when possible
Put all graphic settings to minimum, even with an insane PC.
On console, for some reason i havent tested but others have that seems to help, turn off your internet connection, turn it back on, and then run a network connection test.
Do not spam inputs, or take extra actions you dont need too. Someone above mentioned skulls being an issue, but spells being better. This is a result if the netcode being designed as rollback instead of predictive. Casting a spell does damage quickly, skull damage is done at the end of your combo, so it sees enemy life at the end of movement, then you take a random amount of time to complete the combo (the longer the worse) and deal damage. If the target died during that time, issues WILL happen.
When trying to join a group, if you see “can not join party” that means they are in battle. If you see nothing do not click again, its a can not join nit showing the text box. It will display it usually after a proper can not join shows up, duplicating it.
If you get in a group, its best to be fast, as thats the point, but if you want smooth gameplay, the ideal situation is to kill the first enemy for all X players, and then have only your strongest members attack the second enemy. If you are 4 people, and there is 6 enemies, you all kill, and the 2 strongest then kill theirs.
They have to wait for you to kill yours if they do not get the boss/mini boss, and you have to wait for them to kill round 2, so this is slow.
If 1 person carries you, its better to afk then to fight, even if you can kill something.
All of that assumes performance > fun, which is sad, but the game still ties progression to group play sometimes, so…