3G is Release 99 UMTS. Whereas, 3.5G is WCDMA (enhanced UMTS) with HSDPA and HSUPA enabled. There can be Node Bs (BTSs) with 3G enabled (without HSDPA/HSUPA) and in such a case, it should show 3G. If your serving Node B is HSDPA and HSUPA enabled, it should show 3.5G. and your serving cell is not HSDPA/UPA enabled, it shouldn't show 3.5G. This is perfectly normal. Remember, with Release 99, you can only get downlink speeds only upto 384 kbps whereas with HSDPA enabled, you can get speeds upto 14.4 Mbps (without DC/MIMO). And yeah, this is the theory part.