Chat and meta serve quite different purposes and as with different tools you can sometimes use them for something that they aren't quite designed for, but it will do the trick anyways.
Generally we use chat for discussion, it provides an outlet that is not present in the stricter context of the main site and only slightly looser context of meta. So it tends to be less on topic and much more about getting to know the other chatters.
The "pseudo-meta support" aspect of chat comes in that sometimes you've got a question that might be a bit quicker than a meta post deserves. "How does functionality X work?", can "X do Y?" Generally we've got a few users who are very familiar with the engine or know how to find the answer. It wouldn't hurt if these queries went to meta, but generally they can be handled quickly in chat.
On question formulation, back and forth is sometimes necessary to hammer things out and that's often better done in chat than on meta. Often, rather than pasting the entire text into chat I'll link to a document with my post in it as that seems more convenient to me and doesn't gum up chat with long form messages (although they are supported quite well).
As far as knowing when it's time to take something to meta. It never hurts to start it in chat and sound it off a more experienced user who can then tell you "hey, it's time to take this to meta if we're going to continue it. Meta gets a lot more eyes (And has a better presentation) than chat does where there are just a few active users.
Meta also exposes ideas to the most important of SE concepts, voting. Things that are site policy discussion, or even tag-synonym requests get posted on meta so that people can vote and comment on them. Meta is naturally more pointed than chat and it's easier to vet ideas on meta than it is in chat.