Frank:
"Global channel" means a channel that's configured in MAX. Global channels are nice if you want to use a channel in multiple programs, or if you want to use an interactive editor (the DAQ Assistant) to design your channel, rather than writing all the code to do it. They're also useful if you're moving from Traditional DAQ to DAQmx, as DAQmx Global Channels are very similar to Traditional DAQ Virtual Channels. You use the DAQmxAddGlobalChansToTask function to add a global channel that you've configured in MAX to a task.
Alternatively, you can create channels completely in your code. In this case, you would use one of the many measurement-specific channel creation functions, like DAQmxCreateAIVoltageChan, and supply all the channel parameters programmatically.
Anything you can setup via a Global Channel, you can also setup programmatically. Choosing between the two is really a matter of deciding which is more convenient for you. You're right that if I make one call to the DAQmxCreateAIVoltageChan function and pass a channel string containing multiple channels (like "Dev1/ai0:7"), then other parameters I pass in that function (like terminal configuration) must apply to all the channels. However, you can call DAQmxCreateAIVoltageChan multiple times (once for "Dev1/ai0", again for "Dev1/ai1", etc.) if you want to specify different values.
Finally, I should mention that if you're new to DAQmx and are interested in using the DAQ Assistant, you should look at creating tasks in the Assistant, rather than global channels. New DAQmx users tend to prefer creating tasks directly, as this keeps all your settings together.
-- Chris